Javascript 将字符串中的前N个字母加粗?
我正在尝试制作一个自动完成表单,在您键入时将结果中的字母加粗 我所做的功能不起作用:Javascript 将字符串中的前N个字母加粗?,javascript,jquery,Javascript,Jquery,我正在尝试制作一个自动完成表单,在您键入时将结果中的字母加粗 我所做的功能不起作用: function setBold () { var text = $('input#auto_results').val(); var text_length = text.length; e = $('.result').html(); r = e.replace("<b>", ""); d = r.replace("</b>", "");
function setBold () {
var text = $('input#auto_results').val();
var text_length = text.length;
e = $('.result').html();
r = e.replace("<b>", "");
d = r.replace("</b>", "");
n = d.substr(0, text_length);
q = n.bold();
r = d.length - text_length;
m = d.substr(text_length, r);
$('.result').html(q+m);
}
函数setBold(){
var text=$('input#auto_results').val();
var text_length=text.length;
e=$('.result').html();
r=e.替换(“,”);
d=r。替换(“,”);
n=d.substr(0,文本长度);
q=n.粗体();
r=d.长度-文本长度;
m=d.substr(文本长度,r);
$('.result').html(q+m);
}
因为如果您有多个结果:
<li class='result'>text</li>
<li class='result'>texter</li>
<li class='result'>textes</li>
<li class='result'>textli</li>
<li class='result'>textwe</li>
文本
短信
文本
文本li
我们
它将结果中的文本替换为第一个结果的粗体版本
我想知道如何将列表中的前N个字母加粗:
<li class='result'>textes</li>
<li class='result'>textli</li>
<li class='result'>textwe</li>
文本
文本li
我们
使用javascript和/或jquery 对函数回调使用html()
,如下所示:
function setBold () {
var text = $('input#auto_results').val();
var text_length = text.length;
$('.result').html(function(i,e){
r = e.replace("<b>", "");
d = r.replace("</b>", "");
n = d.substr(0, text_length);
q = n.bold();
r = d.length - text_length;
m = d.substr(text_length, r);
return q+m;
});
}
函数setBold(){
var text=$('input#auto_results').val();
var text_length=text.length;
$('.result').html(函数(i,e){
r=e.替换(“,”);
d=r。替换(“,”);
n=d.substr(0,文本长度);
q=n.粗体();
r=d.长度-文本长度;
m=d.substr(文本长度,r);
返回q+m;
});
}
示例:Oh yes回调。谢谢你把它添加到我的函数中