Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/476.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/21.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 可以在同一函数中使用replaceWith和replace吗?_Javascript_Jquery_Arrays_Performance - Fatal编程技术网

Javascript 可以在同一函数中使用replaceWith和replace吗?

Javascript 可以在同一函数中使用replaceWith和replace吗?,javascript,jquery,arrays,performance,Javascript,Jquery,Arrays,Performance,我正在使用模板引擎,并以唯一的方式传递一个变量,但是这个变量的输出是一个数组,它位于同一行,没有中断 <div> <h4>Questions</h4> <span id="question"> How was your day?,Could you finish it? </span> </div> 问题 你今天过得怎么样?你能完成吗? 这就是它的外观,我不能简单地编辑span

我正在使用模板引擎,并以唯一的方式传递一个变量,但是这个变量的输出是一个数组,它位于同一行,没有中断

<div>
  <h4>Questions</h4>
  <span id="question">
     How was your day?,Could you finish it?
  </span>
</div>

问题
你今天过得怎么样?你能完成吗?
这就是它的外观,我不能简单地编辑span文本,如果渲染后不查看它,span内的代码是空的

我想这样做:

$( "#question" ).replaceWith(  this.text().replace(/,/g, '<br>')); 
$(“#问题”).replacetwith(this.text().replace(/,/g,“
”);

这可能吗?

当您可以再次引用
#问题
来检索文本时:

$(“#问题”).replace为($(“#问题”).text().replace(/,/g,

问题
你今天过得怎么样?你能完成吗?

您需要使用回调函数将
设置为要替换的元素

另外,
这个
是一个DOM元素,您需要将它包装在一个jQuery对象中才能使用
text()
方法

$(“#问题”).replacetwith(函数(){
返回$(this.text().replace(/,/g,
); });

问题
你今天过得怎么样?你能完成吗?
如果要保持跨度,请使用
html(函数)

html((i,curr)=>curr.replace(/,/g,“
”)
#问题{颜色:绿色}

问题
你今天过得怎么样?你能完成吗?

是否确实要使用
replaceWith()
?这将删除
问题
span,这样文本将直接出现在
中。您为什么说它完全破坏了#问题?因为它起作用了,但只对呈现的第一个文件有效。请参阅我答案中的HTML块-查看
#问题
现在是如何消失的?它被完全替换了,这听起来并不完全像一个人想要的(但如果你同意的话,那很好)。重复ID是无效的HTML,因此如果您有多个具有相同ID的元素,则应首先修复该问题,然后迭代新选择器的元素,不管它是什么。