Javascript 刷新jquery。单击父窗口中的侦听器以使用新元素
我有一个HTML表格,在表格单元格中单击会打开一个弹出窗口,并在该表格中添加新的表格行。我还想将.click()侦听器添加到这些行中。这是我的HTML表格Javascript 刷新jquery。单击父窗口中的侦听器以使用新元素,javascript,jquery,html,Javascript,Jquery,Html,我有一个HTML表格,在表格单元格中单击会打开一个弹出窗口,并在该表格中添加新的表格行。我还想将.click()侦听器添加到这些行中。这是我的HTML表格 <table id="myTable" style="width: 100%;"> <tr><th></th><th>Kompetence</th><th>1</th><th>2</th><th>3</th
<table id="myTable" style="width: 100%;">
<tr><th></th><th>Kompetence</th><th>1</th><th>2</th><th>3</th><th>4</th><th>5</th><th>6</th></tr>
<tr style=><td rowspan="2">My text</td>
<td>Some text</td><td class="hodnoceni 1"> </td><td class="hodnoceni 2"> </td><td class="hodnoceni 3"> </td><td class="hodnoceni 4"> </td><td class="hodnoceni 5"> </td><td class="hodnoceni 6"> </td></tr>
<tr><td>Another text</td><td class="hodnoceni 1" title="sum titl"> </td><td class="hodnoceni 2"> </td><td class="hodnoceni 3"> </td><td class="hodnoceni 4"> </td><td class="hodnoceni 5"> </td><td class="hodnoceni 6"> </td></tr>
<tr class="newPartOfTable"><td rowspan="50">This is new part of table</td><td id="testId" class="testClass"> </td><td class="hodnoceni 1"> </td><td class="hodnoceni 2"> </td><td class="hodnoceni 3"> </td><td class="hodnoceni 4"> </td><td class="hodnoceni 5"> </td><td class="hodnoceni 6"> </td></tr>
</table>
这是javascript,它向表中添加新行(在弹出窗口中)
var table=window.opener.document.getElementById(“myTable”);
控制台日志(表);
var row=tabulka.insertRow();
对于(变量i=0;i<7;i++){
var单元=行插入单元(i);
cell.innerHTML=“”;
cell.className=“hodnoceni”;
}
我要做的是在向表中添加新行之后,我希望它们绑定现有的.click()函数
谢谢您的帮助。您可能想看看jquery live函数
您可能想看看jquery live函数 使用
.on()
只需替换:
$("#myTable .hodnoceni").click(function() {
与:
这将为将来的动态dom元素绑定click事件,而不仅仅是那些使用初始dom加载的元素
希望有帮助。使用.on()
只需替换:
$("#myTable .hodnoceni").click(function() {
与:
这将为将来的动态dom元素绑定click事件,而不仅仅是那些使用初始dom加载的元素
希望有帮助。使用
由于javascript添加的新元素在DOM就绪或页面加载时不是DOM的一部分,因此您必须使用
或
使用
由于javascript添加的新元素在DOM就绪或页面加载时不是DOM的一部分,因此您必须使用
或
你可以用like
你可以用like
jQuery live在某些版本中已被弃用。所以最好使用“on”。
它应用于DOM中所有旧的或新的元素。jQuery live在某些版本中已被弃用。所以最好使用“on”。
它应用于DOM中所有旧的或新的元素。您应该使用以下内容:
$('#myTable').on('click', '.hodnoceni', function(event) {
event.preventDefault();
...
});
这会将您的事件附加到#myTable元素中的任何单元格,从而减少检查整个文档元素树的范围并提高效率。您应该使用以下内容:
$('#myTable').on('click', '.hodnoceni', function(event) {
event.preventDefault();
...
});
这将把您的事件附加到#myTable元素中的任何单元格,减少检查整个文档元素树的范围并提高效率。
从jQuery 1.7开始,不推荐使用.live()方法。使用.on()附加事件处理程序。较旧版本的jQuery用户应优先使用.delegate(),而不是.live()
从jQuery 1.7开始,不推荐使用.live()方法。使用.on()附加事件处理程序。jQuery旧版本的用户应优先使用.delegate(),而不是.live()
类名u为每个有问题的值添加了增量u需要将变量i添加到类中以便将事件添加到动态创建的行/列中…类名u为每个有问题的值添加了增量u需要将变量i添加到类中以便将事件添加到动态创建的行/列。。。
$(document).on("click", "#myTable .hodnoceni", function() {
$("#myTable").on("click", ".hodnoceni", function() {
$("#myTable .hodnoceni").on('click', function() {
});
$('#myTable').on('click', '.hodnoceni', function(event) {
event.preventDefault();
...
});