jQuery的新手......
我在aspx页面上有一个隐藏值:
<asp:HiddenField ID="hiddenLabel1" runat="server" value="hidden value"/>
按下按钮时,我这样做:
$.ajax({
type: 'POST',
url: loc + "/GetDate",
data: "{}",
contentType: "application/json; charset=utf-8",
success: function (msg) {
$("#Label1").text(msg.d);
$("#hiddenLabel1").val(msg.d);
}
});
在我的代码背后,我这样做:
protected void Page_Load(object sender, EventArgs e)
{
Label1.Text = hiddenLabel1.Value;
}
按下按钮后,GetDate方法返回日期/时间,我在Label1中显示它并尝试将其保存在隐藏字段hiddenLabel1中。我查看源并期望看到msg.d的值作为hiddenLabel1的值。但是,它有其原始价值。
三个问题:1)为什么隐藏字段不显示新值? 2)事实上,在我看来,与在页面后面的C#代码中更改标签的文本并使其在帖子后面保留其新值不同,它是不可能的,如果在jQuery函数中更改了文本? 3)如果为true,我的方法是使用隐藏字段来保留然后加载新值吗?
答案 0 :(得分:0)
在执行“查看源”时,不会更新vaule,但如果在DOM检查器中检查它(例如IE开发工具),您将看到更新的值
更老式的验证方法是在分配后alert($("#hiddenLabel1").val());
进行验证
答案 1 :(得分:0)
$.ajax({
type: 'POST',
url: loc + "/GetDate",
data: "{}",
contentType: "application/json; charset=utf-8",
success: function (msg) {
$("#Label1").text(msg.d);
$("#hiddenLabel1").val(msg.d);
}
});
短版 -
$.post(loc + '/GetDate',{},function(msg) {
$("#Label1").text(msg.d);
$("#hiddenLabel1").val(msg.d);
}, 'json');