在ajax渲染器上加载javascript
我对javascript非常陌生,遇到了麻烦 基本上,我有一个表单,其中有几个字段用于发出请求,我正在与其他人的代码一起工作 该表单的一个特性是能够发送多个请求,通过从下拉列表中选择请求的数量,可以使用ajax加载表单的多个副本 我最近在这个表单中添加了两个新字段。复选框和文本字段。我使用jquery做了一个简单的切换,这样如果选中复选框,文本字段就会出现在ajax渲染器上加载javascript,javascript,jquery,Javascript,Jquery,我对javascript非常陌生,遇到了麻烦 基本上,我有一个表单,其中有几个字段用于发出请求,我正在与其他人的代码一起工作 该表单的一个特性是能够发送多个请求,通过从下拉列表中选择请求的数量,可以使用ajax加载表单的多个副本 我最近在这个表单中添加了两个新字段。复选框和文本字段。我使用jquery做了一个简单的切换,这样如果选中复选框,文本字段就会出现 <tr> <td> Allow Checkbox </td> &
<tr>
<td>
Allow Checkbox
</td>
<td>
<input type="checkbox" name="Check_1" id="Check_1" value="2" />I accept
</td>
</tr>
<tr id="Row_1" style="display:none;">
<td>
Here is a text field
</td>
<td>
<input type="text" name="field_1" id="field_1" value="" />
</td>
</tr>
<script>
$('#Check_1').click(function() {
$("#Row_1").toggle();
});
</script>
这正如预期的那样工作,但是当我选择多个请求时它不工作。通过ajax加载的表没有加载其中的javascript部分,因此选中时不会切换这些字段
我已经检查了语法,一切似乎都很好。php正在返回正确的字段id的ie Check_2、Row_2、Check_3、Row_3等,对于javascript来说,这是正确的。但是,在呈现jquery时,如何才能让它加载呢?因为新字段是动态输入的,所以没有附加.click处理程序 尝试使用:
$('#Check_1').live("click", function() {
$("#Row_1").toggle();
});
-更新-
我刚看到你提到你的身份证在变。在这种情况下,我建议您在html中添加另一个属性,并将其用作选择器
例如:
谢谢,但那似乎没什么不同,谢谢。太棒了!
<tr>
<td>
Allow Checkbox
</td>
<td>
<input type="checkbox" name="Check_1" id="Check_1" value="2" data-toggles />I accept
</td>
</tr>
<tr id="Row_1" style="display:none;" data-togglable>
<td>
Here is a text field
</td>
<td>
<input type="text" name="field_1" id="field_1" value="" />
</td>
</tr>
$('[data-toggles]').live("click", function() {
if ($(this).is(":checked")){
$(this).parents("tr").siblings("[data-togglable]").show();
} else {
$(this).parents("tr").siblings("[data-togglable]").hide();
}
});