.net - DataGrid - 在 ItemDataBound 上启动 JS 函数

标签 .net javascript

有什么方法可以在 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/

相关文章:

c# - 如何将 XElement 添加到文档,避免 "incorrectly structured document"错误?

c# - 在 C# 上转义花括号和反斜杠

javascript - Angular JS 文本区域验证

javascript - 容器重定向到 URL,但嵌套 anchor 转到与容器不同的 URL

c# - 如何为 Dispatcher.BeginInvoke 提供回调函数

c# - .NET CLR 是否真的针对当前处理器进行了优化

c# - 我们为什么以及在哪里需要托管模块

javascript - 清除 hide <div> 中的输入值

javascript - 如何让两个 Three-JS 对象同时运行和动画?

javascript - socket.join 不起作用(socket.io)