Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/string/5.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字符串解析更改斜杠,带空格,无原因_Javascript_String_Parsing_Replace_Twig - Fatal编程技术网

Javascript字符串解析更改斜杠,带空格,无原因

Javascript字符串解析更改斜杠,带空格,无原因,javascript,string,parsing,replace,twig,Javascript,String,Parsing,Replace,Twig,我正在Ajax数据表中生成动作按钮,其中包含来自symfony应用程序的路由,并在javascript函数中显示Twig 下面是javascript函数: { data: "id", render: function ( data, type, full, meta ) { var duplicate = "{{ path('duplicate_of', { 'id': 'elementid' }) }}";

我正在Ajax数据表中生成动作按钮,其中包含来自symfony应用程序的路由,并在javascript函数中显示Twig

下面是javascript函数:

{   data: "id", 
                render:    function ( data, type, full, meta ) {
                    var duplicate   = "{{ path('duplicate_of', { 'id': 'elementid' }) }}";
                    var deleteof    = "{{ path('delete_of'   , { 'id': 'elementid' }) }}";
                    var update      = "{{ path('updt_of'     , { 'id': 'elementid' }) }}";
                    var detail      = "{{ path('detail_of'   , { 'id': 'elementid' }) }}";
                    var exportof    = "{{ path('export_of'   , { 'id': 'elementid' }) }}";

                    console.log(detail);
                    console.log(data);

    return "<a class='pr5' title='Détail'        onClick='"+detail.replace("elementid", data)        +"'><i class='fa fa-search' aria-hidden='true'></i></a>"+
           "<a class='pr5' title='Dupliquer'     href='"+duplicate   .replace("elementid", data)     +"'><i class='fa fa-files-o' aria-hidden='true'></i></a>"+
           "<a class='pr5' title='Exporter'      href='"+exportof    .replace("elementid", data)     +"'><i class='fa fa-file-excel-o' aria-hidden='true'></i></a>"+
           "<a class='pr10' title='Modifier'     href='"+update      .replace("elementid", data)     +"'><i class='fa fa-pencil' aria-hidden='true'></i></a>"+
           "<a class='pr5 red' title='Supprimer' href='"+deleteof    .replace("elementid", data)     +"'><i class='fa fa-times' aria-hidden='true'></i></a>"
           ; 

                }
}
实际问题:

第二行对我来说是
openModal('/backend/web/app_dev.php/fr/of/elementid/detail')
,之后,我只需要用
数据中包含的实际id替换
元素id
。这就是部分:
detail.replace(“elementid”,data)
,但是这个步骤看起来是错误的


我不明白我做错了什么。。。有人有想法吗;医生:

.replace(“'”、“';”)添加到
详细信息的末尾。replace(“elementid”,data)
(或
详细信息。replace(“elementid”,data)。replace(“,”/”)

说明:

因为
detail
openModal('/backend/web/app_dev.php/fr/of/39/detail')(如控制台中所示),返回语句的第一行,即:

return "<a class='pr5' title='Détail'        onClick='"+detail.replace("elementid", data).replace(" ", "/")   +"'><i class='fa fa-search' aria-hidden='true'></i></a>"+
您看到值中有两个
字符了吗?这就是造成属性混乱的原因。将其替换为
'
,它是
字符的HTML实体(请参阅)。所以当你有这个(注意我添加了
.replace(“'”,“';”)
)时:


return“非常有效。谢谢你,伙计。也谢谢你的解释,我不会再犯同样的错误了
<td>
    <a class="pr5" title="Détail" onclick="openModal(" backend="" web="" app_dev.php="" fr="" of="" 39="" detail');'="">
        <i class="fa fa-search" aria-hidden="true"></i>
    </a>
    <a class="pr5" title="Dupliquer" href="/backend/web/app_dev.php/fr/of/39/duplicate">
        <i class="fa fa-files-o" aria-hidden="true"></i>
    </a>
    <a class="pr5" title="Exporter" href="/backend/web/app_dev.php/fr/of/39/export">
        <i class="fa fa-file-excel-o" aria-hidden="true"></i>
    </a>
    <a class="pr10" title="Modifier" href="/backend/web/app_dev.php/fr/of/39/update">
        <i class="fa fa-pencil" aria-hidden="true"></i>
    </a>
    <a class="pr5 red" title="Supprimer" href="/backend/web/app_dev.php/fr/of/39/delete">
        <i class="fa fa-times" aria-hidden="true"></i>
    </a>
</td>
/backend/web/app_dev.php/fr/of/elementid/detail
openModal('/backend/web/app_dev.php/fr/of/elementid/detail');
return "<a class='pr5' title='Détail'        onClick='"+detail.replace("elementid", data).replace(" ", "/")   +"'><i class='fa fa-search' aria-hidden='true'></i></a>"+
<a class='pr5' title='Détail'        onClick='openModal('/backend/web/app_dev.php/fr/of/39/detail');'><i class='fa fa-search' aria-hidden='true'></i></a>
onClick='openModal('/backend/web/app_dev.php/fr/of/39/detail');'
return "<a class='pr5' title='Détail'        onClick='"+detail.replace("elementid", data).replace(" ", "/").replace("'", "&#39;")   +"'><i class='fa fa-search' aria-hidden='true'></i></a>"+
<a class='pr5' title='Détail'        onClick='openModal(&#39;/backend/web/app_dev.php/fr/of/39/detail&#39;);'><i class='fa fa-search' aria-hidden='true'></i></a>