Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/437.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 - Fatal编程技术网

Javascript 删除强标记并重新加粗匹配字符串中的字符

Javascript 删除强标记并重新加粗匹配字符串中的字符,javascript,jquery,Javascript,Jquery,在input中更改时,我尝试将按钮字符串中的所有匹配字符加粗。但是,该函数仅在搜索的第一个字母上工作正常,并且当有多个字符串匹配时,不会向字符串添加 我尝试在keyup上打开匹配的字符串,使用以下任一解决方案将强字符串重新应用于匹配的字符串,但这也不起作用: $("button").find('strong').unwrap('strong'); $("button").children().unwrap('strong'); $("button").children().find('stron

input
中更改时,我尝试将按钮字符串中的所有匹配字符加粗。但是,该函数仅在搜索的第一个字母上工作正常,并且当有多个字符串匹配时,不会向字符串添加

我尝试在
keyup
上打开匹配的字符串,使用以下任一解决方案将强字符串重新应用于匹配的字符串,但这也不起作用:

$("button").find('strong').unwrap('strong');
$("button").children().unwrap('strong');
$("button").children().find('strong').unwrap();
$(“输入”).on('keyup',function(){
//$(“按钮”)。查找('strong')。展开('strong');
//$(“按钮”).children().unwrap('strong');
//$(“按钮”).children().find('strong').unwrap();
var boldLetter=$(“输入”).val();
$(“button”).html(函数(\ux,html){
返回html.replace(新的RegExp(粗体字母“gi”),“$&”;
});
});

输入搜索词:


阿富汗 南极洲 马里 加拿大 美国 法国 智利
秘鲁
您不想打开
,您想打开
中的文本。您可以使用以下方法指定此选项:

$(“输入”).on('keyup',function(){
$(“按钮”).find('strong').contents().unwrap();
var boldLetter=$(“输入”).val();
if(!boldLetter)return;//如果输入为空,则不执行正则表达式替换
$(“button”).html(函数(\ux,html){
返回html.replace(新的RegExp(粗体字母“gi”),“$&”;
});
});

输入搜索词:


阿富汗 南极洲 马里 加拿大 美国 法国 智利
秘鲁
谢谢泰勒,这有点奏效了。请您输入
a
然后用
退格
清除文本,然后再次使用
a
这一次粗体不可用working@MonaCoder诚然,我注意到了这一点,但我认为这可能只是你的片段的一个副作用。我可以编辑答案来解决这个问题。我刚刚注意到测试代码的问题,你是对的,它也发生在初始代码上。谢谢你,泰勒
$("button strong").contents().unwrap('strong');