Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/255.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 我需要为传单中的layerGroup使用的变量名中的“/”提供转义序列_Javascript_Php_Leaflet_Escaping - Fatal编程技术网

Javascript 我需要为传单中的layerGroup使用的变量名中的“/”提供转义序列

Javascript 我需要为传单中的layerGroup使用的变量名中的“/”提供转义序列,javascript,php,leaflet,escaping,Javascript,Php,Leaflet,Escaping,我正在使用Ajax从MySQL数据库创建标记的layerGroup列表。它可以很好地构建列表,但当我尝试在传单地图中使用列表时,它会出错 未捕获引用错误:未定义F 并指出“N0SAX/F”是问题所在。我相信问题出在斜杠“/”上 var Stations = L.layerGroup([<?php echo ("$callsignList")?>]); 我曾尝试以多种方式转义“/”,但它是值的一部分,因此它必须保留在名称中,列表才能作为图层组正常工作 在MySQL中转义没有任何帮助,

我正在使用Ajax从MySQL数据库创建标记的layerGroup列表。它可以很好地构建列表,但当我尝试在传单地图中使用列表时,它会出错

未捕获引用错误:未定义F

并指出“N0SAX/F”是问题所在。我相信问题出在斜杠“/”上

var Stations = L.layerGroup([<?php echo ("$callsignList")?>]);
我曾尝试以多种方式转义“/”,但它是值的一部分,因此它必须保留在名称中,列表才能作为图层组正常工作

在MySQL中转义没有任何帮助,当我在创建列表时尝试使用它时,它也不起作用


如何告诉传单允许在图层组定义中使用“/”斜杠?

该值需要在引号中,以便将其视为字符串,而不是JavaScript变量

json_encode将PHP值转换为相应的JavaScript文本语法

var Stations = L.layerGroup([<?php echo json_encode($callsignList)?>]);

该值需要在引号中,以便将其视为字符串,而不是JavaScript变量

json_encode将PHP值转换为相应的JavaScript文本语法

var Stations = L.layerGroup([<?php echo json_encode($callsignList)?>]);
最基本的是L.layerGroup是一个字符串数组,所以@Barmar是正确的


var站=L.layerGroup[KA0OTL、W0WTS、AK0SK、K4PAT、WU0G、AD0TU、N0SAX、N0SAX/F、KD0ETL、K0KEX、WA0JT、KM0EOC、AE0DP、KD0FIW、KE0LUA、K0OG]; 如果它是一个字符串数组,那么将出现什么并不重要:

第一种选择:

这些事情应该从源头上加以纠正。如果这是一个数据错误,应该在数据库中修复,如果在提取数据时无法修复,请选择并重新调整空间。 差不多吧

选择 酒吧城, 国家,, 替换国家/地区“/F”, 出版者 第二种选择:

在php中,json_编码应该起作用,如果不能使用str_替换

第三种选择:

在js端,您可以重写表或删除/F

let测试=[KA0OTL、W0WTS、AK0SK、K4PAT、WU0G、AD0TU、N0SAX、N0SAX/F、KD0ETL、K0KEX、WA0JT、KM0EOC、AE0DP、KD0FIW、KE0LUA、K0OG]; tests.maptest=>test.replace/\/F/g; 祝你好运

最基本的是L.layerGroup是一个字符串数组,所以@Barmar是正确的


var站=L.layerGroup[KA0OTL、W0WTS、AK0SK、K4PAT、WU0G、AD0TU、N0SAX、N0SAX/F、KD0ETL、K0KEX、WA0JT、KM0EOC、AE0DP、KD0FIW、KE0LUA、K0OG]; 如果它是一个字符串数组,那么将出现什么并不重要:

第一种选择:

这些事情应该从源头上加以纠正。如果这是一个数据错误,应该在数据库中修复,如果在提取数据时无法修复,请选择并重新调整空间。 差不多吧

选择 酒吧城, 国家,, 替换国家/地区“/F”, 出版者 第二种选择:

在php中,json_编码应该起作用,如果不能使用str_替换

第三种选择:

在js端,您可以重写表或删除/F

let测试=[KA0OTL、W0WTS、AK0SK、K4PAT、WU0G、AD0TU、N0SAX、N0SAX/F、KD0ETL、K0KEX、WA0JT、KM0EOC、AE0DP、KD0FIW、KE0LUA、K0OG]; tests.maptest=>test.replace/\/F/g;
祝你好运

我原以为这样就可以了,但现在我越来越;传单.js:5未捕获的类型错误:无法在Strings上创建属性“\u传单\u id”?如果不是从PHP生成参数,您可以演示如何调用此函数吗?var Stations=L.layerGroup[KA0OTL,W0WTS,AK0SK,K4PAT,WU0G,AD0TU,N0SAX,N0SAX/F,KD0ETL,K0KEX,wa0jt,KM0EOC,AE0DP,KD0FIW,KE0LUA,K0OG];因此,这些是在脚本前面设置的JavaScript变量。它们与PHP变量$callsignList有何关联?JavaScript变量中不能有/,为什么要生成这样的变量呢?事实证明。。。您是对的,Javascript中有一些变量是由PHP设置的,其中包括一个/。它们在数据库中,所以它们当然是以这种方式从数据库中出来的。我可以很容易地在MySQL代码中替换它们,比如说删除/但它需要被某些东西替换,或者至少在这种情况下需要将“F”移到上面,以便值变为N0SAXF,但是如何替换呢?这就是我现在正在做的。再看看我发送的链接,它现在通过进入源代码并修复有问题的变量来工作;传单.js:5未捕获的类型错误:无法在Strings上创建属性“\u传单\u id”?如果不是从PHP生成参数,您可以演示如何调用此函数吗?var Stations=L.layerGroup[KA0OTL,W0WTS,AK0SK,K4PAT,WU0G,AD0TU,N0SAX,N0SAX/F,KD0ETL,K0KEX,wa0jt,KM0EOC,AE0DP,KD0FIW,KE0LUA,K0OG];因此,这些是在脚本前面设置的JavaScript变量。它们与PHP变量$callsignList有何关联?JavaScript变量中不能有/,为什么要生成这样的变量呢?事实证明。。。您是对的,Javascript中有一些变量是由PHP设置的,其中包括一个/。它们在数据库中,所以它们当然是以这种方式从数据库中出来的。我可以很容易地在MySQL代码中替换它们,比如说删除/但是它需要被某些东西替换,或者至少是 在这种情况下,需要将“F”移到上面,使该值变为N0SAXF,但如何将其移动?这就是我现在正在做的。再看看我发送的链接,它现在通过进入源代码并修复有问题的变量来工作。