我需要替换AJAX响应的一部分,例如,我在此表单上有一个ajax响应:

{"vals":["val1223","val1389","val1897","val1321"]}


我需要为每个值替换“ val1”,并以斜体形式显示它们。

我尝试过这种方法,但显示屏上没有任何变化:

 var queryvar =$('#search').val();//value sent in AJAX query
display="";
display +="<ul>";

 //in response

 if(data.vals){
    $.each(data.vals, function(k,v){
       v = v.replace(queryvar, '<i>' +queryvar+ '</i>');
       display +='<li>' + v + '</li>';
    });
  }
display +="</ul>";
$('#results').html(display);

最佳答案

如果要替换val1,请选中replace(),此处无需正则表达式。

v = v.replace(queryvar, '<i>' + queryvar + '</i>');

感谢@kmsdev,这是工作中的demo

10-06 14:02