0

我想在我的选择更改时动态添加表行我已经编写了一个实际执行此操作的脚本,但系统还不是动态的。

<script type="text/javascript" src="jquery-1.3.2.min.js"></script>
<script type="text/javascript">

$(document).ready(function(){
$("#noOfSegments").change(function(){
    var counter=${#noOfSegments}.val();
    for(i=0; i<counter; i++){
    var row = $("<tr><td>"i"</td><td>"i"</td><td>"i"</td><td>"i"</td><td>"i"</td></tr>");
    $("#segmentTable").append(row);
    }
});
});
</script>

<select id="noOfSegments">
<option value="0">0</option>
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
</select>

和#segmentTable 是我的表ID,但上面的脚本给了我这个错误:

“未捕获的语法错误:意外的令牌 {”

谁能建议我一个解决方案?

4

4 回答 4

3

你错过了很多括号、引号和加号。这应该有效:

$(document).ready(function(){
$("#noOfSegments").change(function(){
    var counter=$('#noOfSegments').val();
    for(i=0; i<counter; i++){
    var row = $("<tr><td>" + i + "</td><td>" + i + "</td><td>" + i + "</td><td>" + i + "</td><td>" + i + "</td></tr>");
    $("#segmentTable").after(row.html());
    }
});
});
于 2013-08-24T07:58:43.703 回答
1

演示

更正的代码和

改变了$("#segmentTable").after(row.html())

$("#segmentTable").html(row.html());

$(document).ready(function () {
    $("#noOfSegments").change(function () {
        var counter = $('#noOfSegments').val();
        for (i = 0; i < counter; i++) {
            var row = $("<tr><td>" + i + "</td><td>" + i + "</td><td>" + i + "</td><td>" + i + "</td><td>" + i + "</td></tr>");
            $("#segmentTable").html(row.html());
        }
    });
});
于 2013-08-24T08:00:44.607 回答
0

更改${#noOfSegments}$('#noOfSegments')

于 2013-08-24T07:59:29.810 回答
0

在java脚本中你可以做纯动态

var table = document.createElement("table");
table.id = "tbldrp";
var row = table.insertRow(table.rows.length);
var rowItems = row.insertCell(0);
var label = document.createElement("label");
label.id = "lblDripName";
label.innerHTML = "Label Content";
rowItems.appendChild(label);
于 2013-08-24T08:06:09.987 回答