Jquery AJAX与ASP.NET WebMethod刷新整个页面
本文关键字:刷新 WebMethod AJAX ASP NET Jquery | 更新日期: 2023-09-27 18:05:16
我使用Jquery Ajax在我的表单中设置Label和ListBox的值。我意识到值是由函数正确设置的。但在此之后,页面会刷新,清除之前设置的所有值。为什么会发生这种情况?我是Jquery/Ajax的新手。我是不是漏掉了什么基本原理?提前感谢。
我正在粘贴整个代码
$(document).ready(function () {
$('#Button1').bind('click', function clk() {
$.ajax({
type: "POST",
url: "WebForm5.aspx/TestMethod",
data: "{}",
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (result) {
alert(result.d.ListBox.length);
for (var i = 0; i < result.d.ListBox.length; i++) {
alert(result.d.ListBox[i]);
$(document.createElement("option")).attr("value", result.d.ListBox[i]).html(result.d.ListBox[i])
.appendTo('#<%=ListBox1.ClientID %>');
$('#Label1').text(result.d.MyProperty);
}
}
});
})
});
Button1
在你的代码是一个asp按钮,这是一个提交按钮。当你点击它时,它会提交页面并刷新整个页面。如果你想阻止页面被提交,点击return false
按钮,它将工作。
$('#Button1').bind('click', function clk() {
$.ajax({
type: "POST",
url: "WebForm5.aspx/TestMethod",
data: "{}",
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (result) {
alert(result.d.ListBox.length);
for (var i = 0; i < result.d.ListBox.length; i++) {
alert(result.d.ListBox[i]);
$(document.createElement("option")).attr("value", result.d.ListBox[i]).html(result.d.ListBox[i])
.appendTo('#<%=ListBox1.ClientID %>');
$('#Label1').text(result.d.MyProperty);
}
}
});
return false;
})