动态添加复选框和输入框 jQuery
dynamic adding of checkbox and input box jquery
for (var i = 0; i < Object.keys(value.material).length; i++) {
var newRow = $('<tr/>');
newRow.append('<td ><input type="checkbox" class="" name="[]" CHECKED/>Others</td><td><input type="text" value="' + value.material + '" class="" id="' + i + '"><button class="">Delete</button></td>');
}
$("#tbl > tbody > tr:last").after(newRow);
假设我有这种动态添加,如何防止第一个循环添加删除按钮。这样做的原因是默认屏幕有一行没有按钮,当我动态添加这些新行时,我会删除第一行。所以我需要第一个动态添加的行没有按钮,这样它看起来就像我只添加了按钮,我没有删除第一个。
要防止第一行有按钮,请检查循环中是否i===0
,
for (var i = 0; i < Object.keys(value.material).length; i++) {
var newRow = $('<tr/>');
if(i===0) {
newRow.append('<td ><input type="checkbox" class="" name="[]" CHECKED/>Others</td><td><input type="text" value="' + value.material + '" class="" id="' + i + '">');
} else {
newRow.append('<td ><input type="checkbox" class="" name="[]" CHECKED/>Others</td><td><input type="text" value="' + value.material + '" class="" id="' + i + '"><button class="">Delete</button></td>');
}
}
for (var i = 0; i < Object.keys(value.material).length; i++) {
var newRow = $('<tr/>');
newRow.append('<td ><input type="checkbox" class="" name="[]" CHECKED/>Others</td><td><input type="text" value="' + value.material + '" class="" id="' + i + '">' + (i == 0 ? '' : '<button class="">Delete</button></td>'));
}
$("#tbl > tbody > tr:last").after(newRow);
试试这个
for (var i = 0; i < Object.keys(value.material).length; i++)
{
var newRow = '<tr>';
newRow += '<td ><input type="checkbox" class="" name="[]" CHECKED/>Others</td><td><input type="text" value="' + value.material + '" class="" id="' + i + '">';
if(i != 0)
newRow += '<button class="">Delete</button>'
newRow += '</td></tr>'
}
$("#tbl > tbody > tr:last").after(newRow);
使用 more jQuery ?
$("#tbl > tbody > tr:last").after(function () {
var i = 0;
return $.map(value.material, function (val, key) {
var row = $('<tr />'),
cell1 = $('<td />'),
cell2 = $('<td />'),
inp1 = $('<input />', {
type : 'checkbox',
name : '[]',
checked : 'checked'
}),
inp2 = $('<input />', {
type : 'text',
value : val,
id : i
}),
button = $('<button />', {
text : 'Delete'
});
return row.append(
cell1.append(inp1),
cell2.append(inp2, (i++ !== 0 ? button : []))
);
});
});
相关文章:
- html/jquery输入类型:单选框中的文本不起作用
- jQuery-输入时不提交数据
- 使用jQuery输入的动态名称
- Jquery:输入类型=“”;按钮“;使用.click()函数在Internet Explorer和Safari中不起作
- 使用html中的jquery输入值窗口提示
- 找不到 jquery 输入自动完成函数
- jQuery输入未隐藏
- 将jQuery输入包含在表单帖子中
- jquery:输入选择器未选择:选择元素
- jQuery输入值故障排除
- 如果使用jquery输入一个字段,则自动填充其他字段
- Jquery 输入掩码在正则表达式中不可见
- 未定义 jQuery 输入参数
- IE 中的 Jquery 输入文件类型操作问题
- 带有 Li 的 jquery 输入选择器
- 如何将 jQuery 输入值传递给 Google Maps JS API v3
- Jquery 输入值未正确更新
- 作为触发器的 Jquery 输入类型文件不起作用
- 具有两个不同用户输入的 jQuery 输入掩码
- jQuery 输入选择 - 将中继器内的总计相加