动态表与输入字段jquery点击编辑按钮,启用字段

问题描述:

我正在写一个laravel应用程序,其中我有一个禁用输入字段与edit每个按钮表。我想单击编辑按钮以启用单击该按钮的输入字段。动态表与输入字段jquery点击编辑按钮,启用字段

这是我view.blade.php

@foreach($products as $product) 
       <tbody>  
        <tr> 
        <td class="col-md-2"> 
         <input type="text" name="quantity" id="1" class="form-control" 
         value="{{ $product->quantity }}" disabled="" /> 
        </td> 
        <td class="col-md-7"> 
         <input type="text" name="quantity" id="1" class="form-control" 
         value="{{ $product->description }}" disabled="" /> 
        </td> 
        <td class="col-md-3"> 
         <input type="text" name="quantity" id="1" class="form-control" 
         value="{{ $product->selling_price }}" disabled="" /> 
        </td> 
        <td class="col-md-2"> 
         <button id="edit" type="button" class="btn btn-info"> 
         Edit</button> 
        </td> 
        </tr> 
       </tbody> 
     @endforeach 

这是我的jQuery脚本

 $('#edit').click(function() { 
     $(this).parent().prop('disabled', false); 
    }); 
+0

id应该对每个元素都是唯一的。请注意这一点。代替id使用类名$(this).parent(“tr”)。find('input')。prop('disabled',false); – JYoThI

+0

这不起作用 – nana

对于动态生成的HTML,jQuery的点击编辑绑定需要是不同的。为了更清楚起见,最好使用类名而不是编辑按钮的ID,因为可以重用相同的类名,并且ID应该对元素唯一。

jQuery代码应该是这样的

$('.container').on('click', '.edit', function() { 
    $(this).parents('tr').find('input').prop('disabled', false); 
}); 

在这里,你的容器元素应该已经可用,并且内容中会被动态地呈现。这将自动绑定单击事件到所有类名的值编辑

+0

如果我这样做,它将启用所有输入字段。我正在使用PHP进行foreach循环。 – nana

+0

@nana动态生成标记时,您仍将拥有disabled属性。 我已经创建了一个示例小提琴。看一下,看看这是你在找什么。 [链接] https://jsfiddle.net/kvrahul66/gqvbtp69/4/ **请注意:**请更改输入字段的名称属性。他们都和现在有相同的名字。 –

+0

非常感谢你的工作 – nana