从codebehind设置JQuery属性未触发
我在试着做这个问题的答案 我的页面包含以下代码:从codebehind设置JQuery属性未触发,jquery,asp.net,vb.net,visual-studio-2010,Jquery,Asp.net,Vb.net,Visual Studio 2010,我在试着做这个问题的答案 我的页面包含以下代码: function Initialize() { $("#txtFromDateF").datepicker(); $(".needs-datepicker").datepicker({ changeMonth: true, changeYear: true, dateFormat: 'dd-mm-yy', altFormat: 'yy-mm-dd',
function Initialize() {
$("#txtFromDateF").datepicker();
$(".needs-datepicker").datepicker({
changeMonth: true,
changeYear: true,
dateFormat: 'dd-mm-yy',
altFormat: 'yy-mm-dd',
minDate: $("#<%= minDays . ClientID %>").val()
});
}
$(document).ready(function () {
Session.ResetTimer();
Initialize();
});
SetMinDays()如下所示:
Private Sub SetMinDays()
Select Case TicketSubTypeDropDownList.SelectedItem.Value
Case TicketSubType.ChangeFrequency
minDays.Value = "+10d"
Case TicketSubType.ChangeOpeningHours
minDays.Value = "+30d"
Case TicketSubType.ChangeCiNumber
minDays.Value = "+20d"
Case Else
minDays.Value = "+0d"
End Select
End Sub
当我在下拉列表中选择不同的Net TicketSubType时,我会通过SetMinDays()。但是我的屏幕不会更新日期选择器
如何确保datepicker使用SetMinDays中指定的值?您可以这样做,但有很多事情需要处理,请不要在此处无缘无故地咕哝,如果此隐藏字段在页面(嵌入式控件)中没有重复,请执行以下小技巧: 如果您使用的是asp.net 4.0或更高版本,请将客户端id设置为静态:
<asp:HiddenField ID="minDays" runat="server" ClientIDMode="Static" Value="" />
更新:
在.aspx文件读取服务器id中:
<script>
var yourid= '<%= minDays.ClientID%>';
</script>
我用的是旧版本。所以我没有ClientIDMode。然后读取页面中的id(在页面中使用服务器标记而不是外部脚本文件非常重要),在页面加载时使用辅助变量获取id,使用该id进行初始化我不理解。你是什么意思?在控制台警报(yourid);让我们。
<asp:HiddenField ID="minDays" runat="server" ClientIDMode="Static" Value="" />
minDate: $("#minDays").val()
<script>
var yourid= '<%= minDays.ClientID%>';
</script>
minDate: $("#" + yourid).val();