如何在克隆的单选按钮更改事件中获得文本框的价值?

时间:2013-09-01 07:55:17

标签: jquery

我已经克隆了单选按钮和文本框。现在我有很多文本框和单选按钮更改事件的单选按钮我需要其文本框的值

for (var j = 0; j < sJsonData[1].data.length; j++) {
   var abc = xyz.clone(true, true);
   abc.find('input[type="text"][name="textbox1"]').attr('id', j);
   abc.find('input[type="radio"][name="radio"]').attr('id', j);
}
$('input[type="radio"][name="radio"]').change(function () {
   var paying_amount = $(this).parent()
                              .children()
                              .find('input[type="text"][name="textbox1"]')
                              .val();
});

如何在单选按钮的更改事件中获取文本框的值?

1 个答案:

答案 0 :(得分:3)

避免对文档中的许多元素使用相同的“id”。请改用“课程”。您可以将此作为替代方案,

for (var j = 0; j < sJsonData[1].data.length; j++) {
   var abc = xyz.clone(true, true);
   abc.find('input[type="text"][name="textbox1"]').data('id', j);
   abc.find('input[type="radio"][name="radio"]').data('id', j);

   //abc.find('input[type="text"][name="textbox1"]').attr('id', j);
   //abc.find('input[type="radio"][name="radio"]').attr('id', j);
}

您需要使用'on',因为您要动态添加元素

$('#parent').on("change", 'input[type="radio"][name="radio"]', function(){
   var id = $(this).data('id');
   var paying_amount = $('input[type="text"]').filter('[data-id="'+id+'"]').val();
});