有什么方法可以在 dataGrid 启动其 ItemDataBound 事件后启动 JS 函数吗?
我试过向 ItemDataBound 函数添加一个 JS block ,例如:
protected void itemDataBound (e sender, arguments args)
{
ClientScript.RegisterStartupScript(typeof(string),"test","alert('testing');",true);
}
但它什么也没做。
我错过了什么吗?
最佳答案
阅读您的问题后,您似乎有点混淆了...如果我误解了您已经知道这些内容,请原谅。
我们可以理顺您使用的术语吗?我假设你的意思是:
How can i [attach | insert] a piece of javascript into the page when the grid ItemDataBound event fires?
如果这是您的意思,请跳至下一段。如果不是,并且您希望 javascript 立即执行,那么它不能:您在服务器上,javascript 在客户端上运行。
使用您的测试启动脚本,当它作为 ajax 回调的一部分加载时,它也不会运行 - 您的页面已经加载,您所做的只是替换它的一部分。
当在 ItemDataBound 事件中注入(inject)脚本时,正常的做法是将一段脚本附加到 HTML 元素的事件中——你可以只将一段脚本注入(inject)页面,但你将注入(inject)它用于每个数据绑定(bind)的项目(除非你先测试它的存在),即使那样它也是无用的,除非你直接调用它或有什么东西触发它。
Here is a good example为了帮助您入门,您可以通过快速谷歌找到更多内容。
关于.net - DataGrid - 在 ItemDataBound 上启动 JS 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2505850/