我要做的是当用户自动键入数量时,jquery必须创建带有输入的数量。
所以我用这段代码生成
$( "#cont_qty" ).change(function()
{
var cont_qty = this.value;
for(var i=1 ; cont_qty>i; i++)
{
itemCount++;
// dynamically create rows in the table
var auto_tr = '<tr id="tr'+itemCount+'"><td><input class="input-medium" type="text" id="cont_no'+itemCount+'" name="cont_no'+itemCount+'" value=""></td></tr>';
$("#munna").append(auto_tr)
}
});
如果用户键入5然后它现在创建4如果用户更改值并键入7然后必须删除先前创建的那些4然后必须创建6
现在我不知道如何删除
答案 0 :(得分:2)
在循环前清空,从零开始
$( "#cont_qty" ).change(function() {
var cont_qty = this.value;
$("#munna").empty();
for(var i=0 ; cont_qty>i; i++) {
itemCount++;
var auto_tr = '<tr id="tr'+itemCount+'"><td><input class="input-medium" type="text" id="cont_no'+itemCount+'" name="cont_no'+itemCount+'" value=""></td></tr>';
$("#munna").append(auto_tr)
}
});
答案 1 :(得分:1)
使用 Html()而非追加()
$("#cont_qty").change(function () {
var cont_qty = this.value;
var html = "";
for (var i = 1; cont_qty >= i; i++) {
itemCount++;
// dynamically create rows in the table
html += '<tr id="tr' + itemCount + '"><td><input class="input-medium" type="text" id="cont_no' + itemCount + '" name="cont_no' + itemCount + '" value=""></td></tr>';
}
$("#munna").html(html);
});
答案 2 :(得分:0)
您必须在循环之外使用.html()
而不是.append()
。
$("#munna").html(html);
而不是
$("#munna").append(html);
答案 3 :(得分:0)
$( "#cont_qty" ).change(function()
{
var cont_qty = this.value;
var html = '';
for(var i=1 ; cont_qty>i; i++)
{
itemCount++;
// dynamically create rows in the table
html += '<tr id="tr'+itemCount+'"><td><input class="input-medium" type="text" id="cont_no'+itemCount+'" name="cont_no'+itemCount+'" value=""></td></tr>';
}
$("#munna").html(html);
});
答案 4 :(得分:0)
要防止它创建少于您想要的内容,请更改此项:
for(var i=1 ; cont_qty>i; i++)
到此:
for(var i=1 ; i<=cont_qty; i++)
并且,已经说过,因为您希望每次更改数字时重置字段数量,请将$("#munna").append(html);
更改为$("#munna").html(html);
答案 5 :(得分:0)
$( "#cont_qty" ).change(function()
{
var cont_qty = this.value;
for(var i=1 ; cont_qty>i; i++)
{
itemCount++;
html += '<tr id="tr'+itemCount+'"><td><input class="input-medium" type="text" id="cont_no'+itemCount+'" name="cont_no'+itemCount+'" value=""></td></tr>';
}
$("#munna").html(html)
});
除了使用'append'html div之外,.html可以重新加载div内容。
答案 6 :(得分:0)
使用html()
更改#munna的整个html内容$( "#cont_qty" ).change(function()
{
var cont_qty = this.value;
for(var i=1 ; cont_qty>i; i++)
{
itemCount++;
// dynamically create rows in the table
var auto_tr += '<tr id="tr'+itemCount+'"><td><input class="input-medium" type="text" id="cont_no'+itemCount+'" name="cont_no'+itemCount+'" value=""></td></tr>';
}
$("#munna").html(auto_tr)
});