我想在ASP.net用戶控件到一個aspx頁面時觸發一個Javascript調用。
該網站允許用戶添加用戶控件到頁面(類似於添加一個小部件等像谷歌部件一樣的頁面)。但是,當添加控件時,JavaScript不會觸發,只有當頁面刷新時纔會觸發javascript。如果下一次訪問該網站並且控制權仍然存在,則JavaScript也會觸發。當asp.net用戶控件加載時javascript不會觸發
是否需要使用RegisterClientScript方法在控制加載或OnPreRender事件上註冊呼叫(setAutoTimer()
)。
在用戶控制我有這在ASCX文件的開始:
<script language="javascript" type="text/javascript">
$(document).ready(function() {
if ($("#alarmList").length) {
setAutoTimer();
getData();
}
});
function setAutoTimer() {
setInterval(getData, 10000);
}
function getData() {
$.ajax({
type: "POST",
url: "Service.asmx/getListData
data: "{'inverterid': '" + "1'}",
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (msg) {
AjaxSucceeded(msg);
},
error: AjaxFailed
});
}
function AjaxSucceeded(result) {
$("#alarmList").empty();
$("#alarmsListTemplate").tmpl(result.d)
.appendTo("#alarmList");
}
function AjaxFailed(result) {
alert(result.status + ' ' + result.statusText);
}
</script>
謝謝你的提示。我覺得這已經幫助 – Jawahar 2011-03-16 19:33:37
此。爲我工作得很好,但我希望javascript能夠在兩者之前工作在回調之後,我刪除了'if(args.get_isPartialLoad())',它的工作方式就像一個魅力一樣。謝謝,@bleeeah! – TrustedInSci 2013-07-25 13:19:43