如何触发附加到我的页面的内联 Javascript?(ASP.NET 网络表单)
How do I trigger inline Javascript that's appended to my page? (ASP.NET webforms)
我有一个由服务器生成的页面部分,其中包括由服务器编写的内联javascript(这是 ASP.NET 网络表单)。这个javascript用于将onchange事件绑定到我的下拉列表中,该下拉列表位于$(document).ready()中。
当我的页面部分在页面加载时打开时,$(document).ready() 会触发并且下拉列表会正确绑定。但是,当该部分在页面加载时未打开时(即我必须单击"展开"按钮,该按钮与服务器联系以构建和加载页面部分),内联脚本不会触发。
基本上,区别在于,在一种情况下,<script>
标记位于加载的初始 html 中,而在另一种情况下,<script>
标记在加载页面后附加到初始 html 中。
这是内联脚本:
<script type="text/javascript">
alert('hi inline!');
$j(document).ready( function(){
var $emailNameHidden = $j('#hidden_TargetedEmailName');
$emailNameHidden.on('change', function(){
van.TargetedEmails.loadTestCaseNameSelect($emailNameHidden.val());
});
});
</script>
我添加了警报,以查看是否可以通过将它放在 $(document).ready() 之外来触发它,但警报也仅在脚本包含在初始页面加载中时才触发。
将内联脚本添加到页面后如何触发该脚本?
旁注:我尝试将此内容放在页面部分中包含的外部 JS 文件中,但是当我尝试在外部文件中绑定我的下拉列表时,绑定在下拉列表完成加载之前触发,因此它没有被绑定,当我将绑定放在 $(document).ready() 中时,$(document).ready() 没有触发。
只需将客户端逻辑移动到pageLoad
事件即可。
浏览器中加载时,即在每次回发(ajax或非ajax)和初始加载之后,ASP.Net 框架都会自动触发此JavaScript事件。当您在 ASP.Net 中回发 ajax 后发时,来自 jquery 的文档就绪事件不会触发,但即使在发出 ajax 回发时pageLoad
事件也会触发。
function pageLoad() {
//put the document.ready logic here
}
- 文本框不是从Javascript/Asp.net中的对话框中打印出来的
- 如何在主页的弹出窗口中从向导中的用户控制中获取ControlToValidate ID-javascript asp.n
- 使用javascript asp.net将listbox数据传输到另一个listbox
- 母版页中的 JavaScript asp.net 无法加载
- 将日期与 JavaScript asp.net MVC 进行比较
- 访问javascript ASP.net中的会话
- 使用javascript ASP.NET获取服务器控件上的子控件
- 通过javascript ASP.NET MVC下拉列表调用按钮
- 获取 Checked Checbox 的值返回 JavaScript/ASP.NET VB 中未定义的值
- 网格列总计使用 JavaScript asp.net
- 将 JSON 文件传递给 Javascript ASP.NET MVC4
- 如何获取 EditorFor JavaScript ASP 的值
- 如何从 javascript asp.net mvc3 中设置的 cookie 中获取键值
- 在 MVC 服务器端代码中动态创建和缩小 JavaScript ASP.NET
- 在使用Javascript / Asp.net 上传之前获取文件高度宽度
- 如何触发附加到我的页面的内联 Javascript?(ASP.NET 网络表单)
- 未捕获的语法错误:) 在 MVC 应用程序 JavaScript asp.net 参数列表后丢失
- C# /Javascript /ASP.NET - 从子页面更改 DIV 内容
- 从javascript asp.net调用服务器端函数
- JavaScript-ASP MVC 4中skelJs中未处理的异常