我有一个带有输入字段的表单,其中readonly为真。
我还有一个编辑按钮,我想这样做,以便在单击编辑按钮时,该行的所有输入字段都将只读为false, 但我不知道如何定位此TR中的所有TD>输入。
感谢。
代码。
<tr>
<td>
<img src="http://placehold.it/150x150" alt="">
</td>
<td>
<input name="textinput" placeholder="" value="Olympus E-M1 mark II Body" class="" type="text" style="width: 100%;" readonly>
</td>
<td>
<input name="textinput" placeholder="" value="Olympus" class="" type="text" style="width: 100%;" readonly>
</td>
<td>
<input name="textinput" placeholder="" value="1" class="" type="text" style="width: 100%;" readonly>
</td>
<td>
<input name="textinput" placeholder="" value="€ 1999,00" class="" type="text" style="width: 100%;" readonly>
</td>
<td class="total-price">
<input name="textinput" placeholder="" value="€ 1999,00" class="" type="text" style="width: 100%;" readonly>
</td>
<td>
<a href="#">
// The edit button
<i class="fa fa-edit" style="color: #C7225C; font-size: 20px;"></i>
</a>
<a href="#">
<i class="fa fa-trash" style="color: #C7225C; font-size: 20px;"></i>
</a>
</td>
答案 0 :(得分:2)
将HTML修改为
<a href="#" class="edit">
// The edit button
<i class="fa fa-edit" style="color: #C7225C; font-size: 20px;"></i>
</a>
使用编辑按钮附加事件处理程序,然后使用.closest()
遍历到tr
。之后.find()
可用于将:input
定位到removeProp()
$('.edit').on('click', function(e){
e.preventDefault()
$(this).closest('tr').find(':input').removeProp('readonly');
})
答案 1 :(得分:1)
使用
$('input[name=textinput]').removeProp('readonly');
或尝试
$('input[name=textinput]').removeAttr('readonly');
答案 2 :(得分:1)
$('.fa-edit').parent().click(function(e) {
e.preventDefault()
$(this).closest('tr').find('input').removeAttr('readonly')
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<table>
<tr>
<td>
<img src="http://placehold.it/150x150" alt="">
</td>
<td>
<input name="textinput" placeholder="" value="Olympus E-M1 mark II Body" class="" type="text" style="width: 100%;" readonly>
</td>
<td>
<input name="textinput" placeholder="" value="Olympus" class="" type="text" style="width: 100%;" readonly>
</td>
<td>
<input name="textinput" placeholder="" value="1" class="" type="text" style="width: 100%;" readonly>
</td>
<td>
<input name="textinput" placeholder="" value="€ 1999,00" class="" type="text" style="width: 100%;" readonly>
</td>
<td class="total-price">
<input name="textinput" placeholder="" value="€ 1999,00" class="" type="text" style="width: 100%;" readonly>
</td>
<td>
<a href="#">
// The edit button
<i class="fa fa-edit" style="color: #C7225C; font-size: 20px;"></i>
</a>
<a href="#">
<i class="fa fa-trash" style="color: #C7225C; font-size: 20px;"></i>
</a>
</td>
</table>
描述:从匹配元素集中的每个元素中删除一个属性。
注:
.parent()
答案 3 :(得分:0)
{{1}}
您可以尝试使用prop而不是attr。