【问题标题】:How to change table html with inputs using JQuery如何使用 JQuery 更改带有输入的表格 html
【发布时间】:2017-04-26 12:36:44
【问题描述】:

我有一张表格,其中列出了国家/地区列表作为无线电输入。当用户单击一个国家/地区时,会出现第二个表格,其中提供了两个选项。目前,第二个表输入是:

<td><input class="rr ref1" id="ref1" name="reference" type="radio" /> Who xx references</td>

<td><input class="rr ref2" id="ref2" name="reference" type="radio" /> Who reference xx</td>

我想用所选的特定国家/地区替换“xx”。

我使用了$("td:contains('xx')").replaceWith("COUNTRY"),但这会将 html 替换为纯文本。

当我尝试替换整个 td 代码时,JQuery 脚本不会运行

$("td:contains('xx')").replaceWith("&lt;td&gt;&lt;input class="rr ref1" id="ref1" name="reference" type="radio" /&gt; COUNTRY&lt;/td&gt;")

我想用所选国家的班级名称替换文本,但我也无法让它工作 $("td:contains('xx')").replaceWith($(this).className.text()).

任何关于在哪里寻找的帮助或指导将不胜感激。

【问题讨论】:

    标签: jquery input replace classname


    【解决方案1】:

    为什么不使用 JS replace()?嗯。像这样:

    $.each($("td:contains('xx')"), function(k, v) { 
        var str = $(v).html();
        $(v).html(str.replace("xx", "COUNTRY"));
    });
    

    【讨论】:

    • 谢谢你,这行得通。我似乎无法用类名替换文本。我尝试使用 $(this).attr("class") 但出现未定义。但是,当我使用警告框检查班级时,它会给我班级罚款 alert($(this).attr("class"));
    • 在 $.each() 循环之前获取类名,将其分配给一个变量并在循环内使用该变量。在循环“this”中是整个元素。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-06-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-11-03
    • 1970-01-01
    • 2014-12-28
    相关资源
    最近更新 更多