javascript not firing when asp.net user control loads
Posted
by
Jawahar
on Stack Overflow
See other posts from Stack Overflow
or by Jawahar
Published on 2011-03-16T15:47:58Z
Indexed on
2011/03/16
16:10 UTC
Read the original article
Hit count: 178
I am trying to fire a Javascript call when an ASP.net user control to an aspx page.
The Web site allows users to add user controls to a page (similar to adding a widget etc to a page like google widgets). But when the control is added the javascript does not fire, only if the page is refreshed will it fire the javascript. IF the next time the website is accessd and the controlis still there the javascript fires too.
Do I need to use the RegisterClientScript method to register the call (setAutoTimer()
) on the control load or OnPreRender event.
In the User control I have this at the start of the ascx file:
<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>
© Stack Overflow or respective owner