javascript - 访问 td 元素中的所有输入/文本框

标签 javascript jquery html

我使用的表格具有最后一列中带有“编辑”字样的超链接。前两列中有两个文本框,其 readonly 值设置为 true。

当用户单击“编辑”链接时,我想将 readonly 属性更改为 false,并将超链接的措辞更改为“保存”。

click函数附加到超链接后,如何访问这两个文本框?我的第一个想法是检查 .parent 元素中的 input 并从那里开始,但这不起作用。我还尝试寻找 closest td 元素并在任何 input 上执行 .find 但我不能让它工作(尽管我可能错误地循环输入输入

这是我到目前为止所拥有的:

    $('.editException').click(function () {
        if ($(this).text() == 'Save') {

        } else {
            //Change text of hyperlink (this is working)
            $(this).text('Save');

            //My two attempts at making the text boxes non-readonly
            $(this).parent('input').attr('readonly', false);
            $(this).closest('td').find('input').each(function () {
                this.readOnly = false;
            });
      });

最佳答案

试试这个:

$(this).closest('tr').find('input').attr('readonly', false);

您需要一直到达 TR,因为输入位于不同的列中。您不需要 .each(),因为 .attr() 适用于所有选定的元素。

关于javascript - 访问 td 元素中的所有输入/文本框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24560979/

相关文章:

javascript - 如何在 Angular2 中使用不同的样式表 js 文件网站和登录仪表板后

php - Ajax多维表单数据,格式与$_POST相同

javascript - 使用 jQuery promise 等待转换

c# - 如何通过 C# 更改 html 图像 src

javascript - 如何使用 javascript 更改进度条的颜色?

javascript - 为 D3 Force Directed 格式化 JSON 的最佳方式

javascript - 追加值留在原地

php - mysql 喜欢你和其他人

javascript - 如果标记了复选框,则复制 TR 元素并附加到外部源

javascript - Materialise 表中的方形单元格