动态选择框的问题

时间:2013-09-04 01:26:11

标签: jquery

我的应用程序有一个包含一行的表和一个“添加”按钮,用于使用jquery的clone方法添加更多行。这些行中的每一行都有两个选择框,使用jquery动态填充。

选择框的ID是动态生成的(mark1,mark2,mark3,...)和(model1,model2,model3,...)。

我使用for循环来填充所有选择框,但这不起作用。这是我的代码:

for(count=1; count<=numRows; count++) { 

    $('#mark'+count).change(function(){

        $('#model'+count).load('findModel.php?mark='+$('#mark'+count).val());

    });

}

是否可以使用jquery?

谢谢, 马塞洛。

嗨Simdrouin,我正在使用另一个脚本(countRows.php)来接收行数并将其再次传递给主脚本。

$.ajax({

    url: 'countRows.php',
    type: 'POST',
    data: { data : window.numRows },
    success: function (data) {

    $('#mark'+data).change(function(){

        $('#model'+data).load('findModel.php?mark='+$('#mark'+data).val()+'&numRows='+window.numRows);

    });

});

countRows.php

<?

$numRows=$_POST['data'];
echo $numRows;

?>

谢谢, 马塞洛。

1 个答案:

答案 0 :(得分:0)

您无法在更改事件中使用 count 变量。

这是一个jsfiddle,这与PHP文件不完全一样,但可能会给你一些想法:

http://jsfiddle.net/Ex9pu/

我在markX select中添加了一个data-id属性以供进一步参考:

$('#mark' + (i+1)).data('index', i);

然后在更改事件中,您可以引用它以获取相应的模型:

var index = $(this).data('index');

请注意,由于我无法访问您的php文件,因此我添加了数组中的内容。