2013-07-30 163 views
0

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

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"); 
} 
}) 
} 
}); 
} 
+0

你在谈论一个ASP.NET UpdatePanel? – Zack

+0

为什么不把日期选择器值添加到与JS下拉列表?为什么一直发回服务器? – tymeJV

+0

是的,asp.net,只是编辑了这个问题。 – gg17

回答

0

这是我做的异步JavaScript中更新ASP.NET的UpdatePanel。

页中的JavaScript

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

页标记

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

页面代码

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

这是什么母鹿s允许我调用javascript函数doPostBackAsync(),它就像点击UpdatePanel中的按钮,并使UpdatePanel执行PostBack。所以你只需拨打doPostBackAsync,你现在有你的alert

+0

谢谢Zack,功能是执行,但面板不更新,客户端没有更改。 – gg17