c# - 如何在javascript中访问动态创建的对象?

标签 c# javascript asp.net dynamic

我创建了一个动态表,我想在 javascript 中访问其中一个创建的对象。例如:如何定位动态创建的按钮?

<script type="text/javascript">
function myJavaScriptFunction()
{ 
 //How do I know here which button triggered the function?
}
</script>

<table>
<% for (var i=0; i<10; i++) { %> 
  <tr class="rowcell">
   <td class="datacell">
   <input type="button" id='<%="button-no-"+i%>' value="myButton" onclick="myJavaScriptFunction()"/>
   </td>
 </tr>
<% } %>
</table>

提前谢谢你 /约翰

最佳答案

将参数映射为对象:

function myJavaScriptFunction(object)
{ 
 //How do I know here which button triggered the function?
    var id = object.id;
}

在您的 HTML 中,您需要执行以下操作:

onclick="myJavaScriptFunction(this)"

这是您调用函数的地方,您将 this 关键字作为参数传入。

关键字 this 指调用的是哪个 HTML 元素,即您单击的任何按钮。该对象具有您在函数中定义为 object.id 的属性 id。属性 id 的值基本上是输入标签的“id”字段。

把它们放在一起,你会得到:

<script type="text/javascript">
function myJavaScriptFunction(object) // You're defining the function as having a parameter that it accepts. In this case, it accepts an object.
{ 
   alert(object.id); // Alert the object's id.
   // Do what you want with object.id
}
</script>

<table>
<% for (var i=0; i<10; i++) { %> 
  <tr class="rowcell">
   <td class="datacell">
   <input type="button" id='<%="button-no-"+i%>' value="myButton" onclick="myJavaScriptFunction(this)"/>
   </td>
 </tr>
<% } %>
</table>

关于c# - 如何在javascript中访问动态创建的对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12777418/

相关文章:

c# - 以编程方式解锁 Windows

jquery - 使用 jquery 创建 asp.net 服务器控件

asp.net - 如何在 ASP.NET MVC 中加密 URL?

c# - 无法在身份服务器 3 中获取 token

c# - 数据库架构已更改

c# - DownloadString 跳过换行符

javascript - 在 javascript 中比较 NaN

javascript - 在 IE 中设置边框的不透明度(version<=8)

javascript - 连续的 Ajax 调用已交换数据

javascript - 单击 fancybox2 外部