javascript - 通过文本而不是值选择属性选项?

标签 javascript jquery dynamic drop-down-menu attributes

单击表格行时,行文本会复制到上面的输入以进行编辑。文本复制得很好,但我无法正确选择所有内容。我的文本与值不同(对于每个选择,它针对第三列),因此我无法使用选择的 .val() 。

我需要在文本与文本开头匹配的位置选择属性/属性以及是否可报销(第三列)。有想法吗? jsfiddle.net/7vLdxddr/14

$('.table').on('click', 'tr', function () {

                if ($(this).hasClass('selected')) {
                    $(this).removeClass('selected');
                }
                else {
                    $('tr.selected').removeClass('selected');
                    $(this).addClass('selected');
                }

                for (var i = 0; i < $(this).find("td").length; i++) {
                    // fill input values
                    $(this).closest("table").find("th").eq(i).find("input:text").val($(this).find("td").eq(i).text());
                    // fill selects
                    $(this).closest("table").find("th").eq(i).find("select").val($(this).find("td").eq(i).text());
                }
            });

最佳答案

如果您这样做,则不需要具有等于文本的值。

    $('table').on('click', 'tr', function () {
        if ($(this).hasClass('selected')) {
            $(this).removeClass('selected');
        }
        else {
            $('tr.selected').removeClass('selected');
            $(this).addClass('selected');
        }

    // fill inputs
    $(this).closest("table").find("th").eq(0).find("input:text").val($(this).find("td").eq(0).text());

    // fill selects      
   var text = $(this).find("td").eq(1).text();
   var text3 = $(this).find("td").eq(2).text();

   $(this).closest("table").find("th").eq(1).find("select option").filter(function() {
    return $(this).text().indexOf(text) >= 0 && $(this).text().indexOf($(this).closest("table").find("th").eq(2).find('select option[value="' + text3 + '"]').text()) > 0;
}).prop('selected', true);        

   $(this).closest("table").find("th").eq(2).find('select').val(text3);

});

http://jsfiddle.net/7vLdxddr/15/

关于javascript - 通过文本而不是值选择属性选项?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25920759/

相关文章:

javascript - 我怎样才能同时去锚定和打开 Bootstrap Accordion ?

javascript - Webpack 2 beta + 历史 API 回退不起作用

javascript - 如何在 if 语句中包含鼠标滚轮滚动和单击事件?

javascript - 如何通过一个 ajax 调用执行两个操作 - WordPress

javascript - 使用 jquery 和数据库检查更改

javascript - 在 Ruby 中动态命名数组/哈希

javascript - 如何根据复选框列选择表格中的行

javascript - 测试两条线是否相交 - JavaScript 函数

c# - 使用 LINQ,是否可以从 Select 语句输出动态对象?如果是这样,如何?

javascript - 带有 html 内容的工具提示出现在右侧,有工作代码,但它仅适用于 1 个提示,我希望它是动态的