代码ReplaceWith

时间:2019-02-12 11:15:56

标签: javascript jquery

在我使用jquery的replaceWith函数时,控制台出现创建错误。

 $("#fetchvalue").replaceWith('<input type="text" class="form-control" name="subcategorytwo" value="+opt_subcat_two+" id="fetchvalue" data-toggle="modal" data-target="#myModal">'+opt+'</input>');

我添加了错误屏幕,我已经解决了很多,但我失败了。 enter image description here

4 个答案:

答案 0 :(得分:2)

由于您的字符串包含双引号,因此请使用单引号作为字符串定界符,或在字符串内转义双引号。这是一个使用单引号引起来的字符串分隔符的示例:

$("#fetchvalue").replaceWith('<a type="text" class="form-control" name="subcategorytwo" value="" id="fetchvalue" data-toggle="modal" data-target="#myModal">'+opt+'</a>');

我猜opt是一个变量,因此根本不需要用引号引起来。

更新,带有值属性:

$("#fetchvalue").replaceWith('<a type="text" class="form-control" name="subcategorytwo" value="' + opt_subcat_two + '" id="fetchvalue" data-toggle="modal" data-target="#myModal">'+opt+'</a>');

答案 1 :(得分:1)

尝试

 $( "#fetchvalue" ).replaceWith('<a type="text" class="form-control" name="subcategorytwo" value="" id="fetchvalue" data-toggle="modal" data-target="#myModal">'+opt+'</a>');

根据评论更新答案

var opt =1;
var opt_subcat_two =2;
$( "#fetchvalue" ).replaceWith('<a type="text" class="form-control" name="subcategorytwo" value='+opt_subcat_two+' id="fetchvalue" data-toggle="modal" data-target="#myModal">'+opt+'</a>');

答案 2 :(得分:0)

您需要转义在replaceWith参数中使用的所有双引号:

$( "#fetchvalue" ).replaceWith("<a type=\"text\" class=\"form-control\" name=\"subcategorytwo\" value=\"\" id=\"fetchvalue\" data-toggle=\"modal\" data-target=\"#myModal\">"+"opt"+"</a>");

答案 3 :(得分:0)

使用正确的'。代替“使用'

var opt=7;
var opt_subcat_two=11;
$( "#fetchvalue" ).replaceWith("<a type='text' href='#' class='form-control' name='subcategorytwo' value="+opt_subcat_two+" id='fetchvalue' data-toggle='modal' data-target='#myModal'> "+opt+"</a>");
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div id="fetchvalue"></div>