在jquery之后从代码后面更新asp.net更新面板

时间:2013-07-30 17:21:28

标签: jquery asp.net updatepanel

我有一个jquery日期选择器,当选择一个日期时,它会被传递给代码隐藏,并在那里插入到下拉列表中。日期传递正常,但不会插入到下拉列表中。好像面板没有得到更新。有没有办法从代码隐藏更新面板。 panel.update(); - 不起作用。 这是javascript函数

function clicked() {
$('#<%=link_btn.ClientID%>').click(function() {
$('#datepicker').datepicker({
dateFormat: "yy-mm-dd",
onSelect: function() {
var date = $(this).datepicker('getDate');
var newDate = $.datepicker.formatDate("yy,mm,dd", date);
var dataToSend = { newDate: newDate};
$.ajax({
  url: "url",
  data: dataToSend,
  type: "POST",
  success: function(result) {
      alert("success");
 }
 })
}
});
}

1 个答案:

答案 0 :(得分:0)

以下是我从javascript异步更新ASP.NET UpdatePanel的工作。

Page javascript

var doPostBackAsync = function() { <%= GetBtnClickPostBackReference() %> }

页面标记

<asp:LinkButton 
  ID="btnPostBack" 
  runat="server" 
  Visible="true" 
  Style="display: none;" />

页码

protected string GetBtnClickPostBackReference()
{
  return Page.ClientScript.GetPostBackEventReference(btnPostBack, "");
}

这样做,允许我调用javascript函数doPostBackAsync(),就像点击了UpdatePanel中的按钮一样,并导致UpdatePanel执行{{1} }}。因此,您只需致电当前PostBack所在的doPostBackAsync