Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/72.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何修改动态生成表中复选框的标签?_Javascript_Jquery_Html_Forms_Checkbox - Fatal编程技术网

Javascript 如何修改动态生成表中复选框的标签?

Javascript 如何修改动态生成表中复选框的标签?,javascript,jquery,html,forms,checkbox,Javascript,Jquery,Html,Forms,Checkbox,我是javascript/Jquery新手,有以下问题: 我正在尝试修改动态生成表中复选框的标签: <td> <input type="checkbox"> <b>$18,000.00</b> ($18000+) Diamond Sponsor<br> <input type="checkbox"> <b>$10,000.00</b> ($10000+) Ruby Sponsor<br>

我是javascript/Jquery新手,有以下问题:

我正在尝试修改动态生成表中复选框的标签:

<td>
<input type="checkbox"> <b>$18,000.00</b> ($18000+) Diamond Sponsor<br>
<input type="checkbox"> <b>$10,000.00</b> ($10000+) Ruby Sponsor<br>
<input type="checkbox"> <b>$5000.00</b> ($5000+) Emerald Sponsor<br>
<input type="checkbox"> <b>$3600.00</b> ($3600+) Gold Sponsor<br>
<input type="checkbox"> <b>$1800.00</b> ($1800+) Silver Sponsor<br>
<input type="checkbox"> <b>$1000.00</b> ($1000+) Bronze Sponsor<br>
<input type="checkbox"> <b>$500.00</b> ($500+) Pillar<br>
<input type="checkbox"> <b>$250.00</b> ($250+) Patron<br>
<input type="checkbox"> <b>$180.00</b> ($180+) Supporter<br>
<input type="checkbox"> <b>$100.00</b> ($100+) Friend<br>
<input type="checkbox"> <b>$50.00</b> ($50+) Donor<br>
<input type="checkbox"> <b>$25.00</b> ($25+) Donor<br>
</td>

18000.00美元($18000+)钻石赞助商
$10000.00($10000+)红宝石赞助商
$5000.00($5000+)翡翠赞助商
3600.00美元($3600+)黄金赞助商
1800.00美元($1800+)银牌赞助商
1000.00美元($1000+)铜牌赞助商
$500.00($500+)支柱
$250.00($250+)用户
$180.00($180+)支持者
$100.00($100+)朋友
$50.00($50+)捐赠者
$25.00($25+)捐赠者
我需要在显示每个输入时隐藏标签文本的一部分。特别是括号中的数字

目前情况如下:

18000.00美元($18000+)钻石赞助商
$10000.00($10000+)红宝石赞助商
$5000.00($5000+)翡翠赞助商
3600.00美元($3600+)黄金赞助商
1800.00美元($1800+)银牌赞助商
1000.00美元($1000+)铜牌赞助商
$500.00($500+)支柱
$250.00($250+)用户
$180.00($180+)支持者
$100.00($100+)朋友
$50.00($50+)捐赠者
$25.00($25+)捐赠者

如何从输入标签中删除包括括号在内的数字,但保留标签的其余部分不变

非常感谢您的帮助

请使用:

jQuery:

$('td').html(function (_, html) {
    return html.replace(/(\(.*\))/ig, '<span class="hide">$1</span>');
});
.hide {
    display:none;
}

$18000.00($18000+)钻石赞助商
$('input:checkbox')。在('change',function()上{ $(this).closest('span').toggle(); });
你不能用一个类将文本包装在一个跨度中并隐藏它?答:沃尔夫是对的,标记不好。你的问题标题似乎与你的问题文本不匹配:你需要删除所有复选框的括号(这是你问题的主体所暗示的),还是只删除复选框的括号(就像你的标题所说的那样)?(如果是前者,难道你不能简单地不写出括号吗?)难道你不能简单地更改生成软件,使括号表达式不存在吗?当然,这可以在生成表后在客户端JavaScript中处理吗(但一个稳健的解决方案需要更多关于环境和条件的具体信息),但为什么?@Martha对此表示抱歉,标题已更新。问题是针对前者,正如您所说。我对这一点还不熟悉,并且不断学习,所以我不太理解您所说的“…写出附加内容…”.你能详细说明一下吗?OP在哪里提到他希望能够切换文本?你还可以自由地将文本包装在OP没有在他的问题中发布的跨距中。此外,你还使用了.closest()它将搜索父跨度,对吗?@Tyagi很抱歉标题和实际描述之间的错误沟通。感谢您的建议。您的JSFIDLE示例中提供的示例就是我要查找的结果,但在应用脚本后,标记将应用于“$18000.00”和“捐赠者”之间的所有内容不是用括号代替数字的每个实例。现在的输出是一行,看起来像:$18000.00。谢谢你花时间帮助我,我很感激。不,在小提琴中,它被正确地应用了。如果它在你的页面上没有被正确地应用,那么其他东西正在干扰。例如:
500.00($500+)支柱
我在一个SAS的CMS中工作,因此在运行导致问题的脚本之前,代码生成的方式可能存在一些问题。希望我能找到答案。再次感谢!
<input type="checkbox"> <span><b>$18,000.00</b> ($18000+)</span> Diamond Sponsor<br>

$('input:checkbox').on('change',function(){

   $(this).closest('span').toggle();
});