我创建了一个动态表,我想在 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/