javascript - 如何使用 jQuery 删除文本区域的禁用属性?

标签 javascript jquery html

我的 HTML 表单中有多个文本区域,每个文本区域后跟一个编辑链接。当我点击一个 编辑链接,应启用相应的文本区域。我的代码如下:

<script type="text/javascript">

    $(document).ready(function() {

        $(".edit").click(function(){
            $(this).attr("id").removeAttr("disabled");
        });

    });  

</script>

<textarea  id="txt1"  disabled="true"></textarea>
<a class="edit" id="txt1" >edit</a>

<textarea  id="txt2"  disabled="true"></textarea>
<a class="edit" id="txt2" >edit</a>

为什么点击相应的链接后没有启用textarea?

最佳答案

id 在一个页面中只能使用一次。不能有 2 个(或更多)元素具有相同的 ID。

相反,do this :

<form id="myform">
    <!-- group each in divs -->
    <div>
        <textarea disabled="true"></textarea>
        <a class="edit">edit</a>
    </div>
    <div>
        <textarea disabled="true"></textarea>
        <a class="edit">edit</a>
    </div>
</form>
<script>
    $(function(){
        $('#myform').on('click','.edit',function(){ 
            $(this)                       //when edit is clicked
                .siblings('textarea')     //find it's pair textarea
                .prop("disabled", false)  //and enable
            return false;
        });
    });
</script>

如果你不能使用 div,那么你可以使用 prev('textarea') 而不是 siblings('textarea') 来获取前面的 textarea。

关于javascript - 如何使用 jQuery 删除文本区域的禁用属性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10527638/

相关文章:

javascript - Jquery 悬停在标签上持续触发

javascript - Bootstrap jQuery - 空字段验证问题

javascript - 即时更改 Twitter 小部件的外观

javascript - 按下 Tab 键时出现焦点问题

jquery - 使用 Jquery 自动完成

Javascript:不插入右索引行表

Jquery 最大值

css - 限制图像的最大高度,这取决于其 sibling 的高度

javascript - IE8 引起了许多关于 CSS 的问题

html - 如何定位底部页脚?