我正在使用简单的asp.net网页上有几个字段,当用户点击提交按钮,我异步调用并发布数据。为什么我的表单正在做回发,当我异步调用?
但是,我的整个页面发布回来,我甚至没有看到我试图显示的消息,如果我的数据得到张贴成功。
这是我的页面。
<div id="status"></div>
<asp:Label runat="server" ID='lbl' >Name:</asp:Label>
<asp:TextBox ID="txtName" runat='server'></asp:TextBox>
<asp:Label runat="server" ID='Label4' >Host Name:</asp:Label>
<asp:TextBox ID="txtHost" runat='server'></asp:TextBox>
<asp:Label runat="server" ID='Label2' >Start Date:</asp:Label>
<asp:TextBox ID="txtStartDate" runat='server' ></asp:TextBox>
<asp:Label runat="server" ID='Label6' >End Date:</asp:Label>
<asp:TextBox ID="txtEndDate" runat='server' ></asp:TextBox>
<ul>
<li>
<button id="btnCancel" name="btnCancel" type="button">
Cancel</button></li>
<li>
<button id="btnReset" name="btnReset" type="reset">
Reset</button></li>
<li>
<button id="btnSubmit" name="btnSubmit" type="submit">
Submit</button></li>
</ul>
</p>
</form>
</div>
//Store new Contract Request Methods
function processCompletedContactStore(response) {
if (!response) {
showErrorMsg('No Contacts Returned');
return;
}
else {
if (response.Message == 'update') {
$("#status").fadeTo(500, 1, function() { $(this).html("Updated successfully!").fadeTo(500, 150); })
}
}
}
function SavePage() {
var request = buildNewContactRequest();
ContactServiceProxy.invoke({ serviceMethod: "PostNewContact",
data: { request: request },
callback: function(response) {
processCompletedContactStore(response);
},
error: function(xhr, errorMsg, thrown) {
postErrorAndUnBlockUI(xhr, errorMsg, thrown);
}
});
return false;
}
$(document).ready(function()
{
$("#btnSubmit").click(function() {
SavePage();
});
});
请看我刚刚更新了我的代码: – 2010-05-12 19:28:00
@Abu Hamzah,虽然您从函数SavePage返回false,但您有一个内联函数绑定到不返回任何内容的click事件,请尝试修改我添加到的代码段我的回答是 – Pharabus 2010-05-12 19:35:45