在我使用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>');
答案 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>