Javascript 在特定行之后添加表行
我在这里试图添加一个新行onclick事件的按钮,它假设是添加在某一行Javascript 在特定行之后添加表行,javascript,jquery,html,Javascript,Jquery,Html,我在这里试图添加一个新行onclick事件的按钮,它假设是添加在某一行之后 这里是我正在尝试的示例代码 html: <table> <tr> <td>phone</td> <td>akfg</td> <td>akfg</td> <td>akfg</td> <td>akfg</td> </tr> <
之后
这里是我正在尝试的示例代码
html:
<table>
<tr>
<td>phone</td>
<td>akfg</td>
<td>akfg</td>
<td>akfg</td>
<td>akfg</td>
</tr>
<tr class="email">
<td>email</td>
<td>akfg</td>
<td>akfg</td>
<td>akfg</td>
<td>akfg</td>
</tr>
<tr>
<td>im</td>
<td>akfg</td>
<td>akfg</td>
<td>akfg</td>
<td>akfg</td>
</tr>
</table>
<button>click me</button>
电话
akfg
akfg
akfg
akfg
电子邮件
akfg
akfg
akfg
akfg
感应电动机
akfg
akfg
akfg
akfg
点击我
js
$(文档).ready(函数(){
var strVar=“”;
strVar+=“”;
strVar+=“电子邮件”;
strVar+=“akfg”;
strVar+=“akfg”;
strVar+=“akfg”;
strVar+=“akfg”;
strVar+=“”;
strVar+=“”;
var priIm=真;
$('button')。在('click',函数(){
如果(priIm){
$('table').append(strVar);
priIm=假;
}否则{
(strVar.insertAfter($('tbody.email'));
}
});
});
是的,我也尝试了append()
函数像这样使用.after()
-
$('tr.email').after(strVar);
演示--->
使用.after()
而不是.append()
您需要使用
$
将strVar
变量转换为jQuery对象,以便strVar
能够使用jQuery方法:
$(strVar).insertAfter($('table').find('.email'));
// ^ here ---
尝试使用after()
而不是insertAfter()
检查它。我编辑了你的代码及其工作状态 像这样编辑并使用append() 选中这将起作用-
$(document).ready(function(){
var strVar="";
strVar += " <tr>";
strVar += " <td>phone<\/td>";
strVar += " <td>akfg<\/td>";
strVar += " <td>akfg<\/td>";
strVar += " <td>akfg<\/td>";
strVar += " <td>akfg<\/td>";
strVar += " <tr> ";
strVar += " ";
var priIm = false;
$('button').on('click' , function(){
if(!priIm){
$('table').append(strVar);
priIm = true;
}else{
$(strVar).insertAfter('tr.email');
}
});
});
$(文档).ready(函数(){
var strVar=“”;
strVar+=“”;
strVar+=“电话”;
strVar+=“akfg”;
strVar+=“akfg”;
strVar+=“akfg”;
strVar+=“akfg”;
strVar+=“”;
strVar+=“”;
var priIm=假;
$('button')。在('click',function()上{
如果(!priIm){
$('table').append(strVar);
priIm=真;
}否则{
$(strVar).insertAfter('tr.email');
}
});
});
您错过了在
$()
中的wrap'strVar
,然后insertAfter
将选择器作为参数,正如我在文档中看到的那样。您可以更新为使用.after()或.insertAfter()
:
或者这个:
$('button').on('click', function () {
$(strVar).insertAfter($('table').find('.email'));
});
请试试这个
"$('table .email').after(strVar);"
而不是
"$('table').append(strVar);"
$(document).ready(function(){
var strVar="";
strVar += " <tr>";
strVar += " <td>phone<\/td>";
strVar += " <td>akfg<\/td>";
strVar += " <td>akfg<\/td>";
strVar += " <td>akfg<\/td>";
strVar += " <td>akfg<\/td>";
strVar += " <tr> ";
strVar += " ";
var priIm = false;
$('button').on('click' , function(){
if(!priIm){
$('table').append(strVar);
priIm = true;
}else{
$(strVar).insertAfter('tr.email');
}
});
});
$('button').on('click', function () {
$('table').find('.email').after(strVar);
});
$('button').on('click', function () {
$(strVar).insertAfter($('table').find('.email'));
});
"$('table .email').after(strVar);"
"$('table').append(strVar);"