[英]Appending Div after AJAX post
我正在努力理解为什么发生以下情况。 我正在调用一个非常简单的Web服务,如下所示。 由于某种原因,我的jquery追加了div,但是它立即消失了吗? 不好意思的线程道歉...
另外,使用VS2013提供的jquery 1.7.1
<WebMethod()>
Public Function GetTime() As String
Dim time As String = ""
time = Now().TimeOfDay.ToString
Return time
End Function
我的AJAX在下面
function CallWebServiceFromJquery() {
$.ajax({
type: "POST",
url: "WebService.asmx/GetTime",
data: "{}",
contentType: "application/json; charset=utf-8",
dataType: "json",
success: setTime,
error: OnError
});
}
成功功能
function setTime(data, status) {
//alert(data.d);
$("#time").css("visibility", "visible")
$("#time").append("<h1>" + data.d + "</h1>")
}
最后,onclick
<asp:Button ID="btnCallWebService" runat="server" OnClientClick="CallWebServiceFromJquery()" Text="Call Webservice" />
单击按钮本身会引起回发,因此为什么附加的div
似乎消失了。 您需要使用preventDefault()
停止默认事件行为:
<asp:Button OnClientClick="CallWebServiceFromJquery(event)" ...
function CallWebServiceFromJquery(e) {
e.preventDefault();
$.ajax({
// ajax settings...
});
}
确保CallWebServiceFromJquery
返回false
。 根据您对div出现和消失的描述,您的页面正在回发。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.