Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/search/2.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
无法检查从json编码的php数组准备的javascript json中的对象值_Javascript_Php_Arrays_Json - Fatal编程技术网

无法检查从json编码的php数组准备的javascript json中的对象值

无法检查从json编码的php数组准备的javascript json中的对象值,javascript,php,arrays,json,Javascript,Php,Arrays,Json,服务器端代码 $NATIVE_TEST_TEMPLATE_IDS = array(145); 将PHP数组分配到javascript的客户端代码- var nativetestTemplates = "<?php echo json_encode($NATIVE_TEST_TEMPLATE_IDS); ?>"; //PHP array into JSON. 此外,阵列的各个元素具有以下特性- nativetestTemplates[0] -> [ nativetestTem

服务器端代码

$NATIVE_TEST_TEMPLATE_IDS = array(145);
将PHP数组分配到javascript的客户端代码-

var nativetestTemplates = "<?php echo json_encode($NATIVE_TEST_TEMPLATE_IDS); ?>"; //PHP array into JSON.
此外,阵列的各个元素具有以下特性-

nativetestTemplates[0] -> [
nativetestTemplates[1] -> 1
nativetestTemplates[2] -> 4
nativetestTemplates[3] -> 5
nativetestTemplates[4] -> ]
那么,我做错了什么?检查对象中是否存在元素的最佳方法是什么。

更新

在修复了Djave指出的错误之后,我仍然无法检查对象nativetestTemplates中是否存在元素

这是我的密码-

案例1

即使TestedNetworkId具有匹配值,也会返回以下值-

see -1 and undefined
案例2

但是,如果我这样做-

var testAdnetworkId = 145; //hardcoded integer val
我获得了$.inArray检查所需的输出-

 see 0 and undefined
testAdnetworkId的console.dir在案例1中给出了以下信息-

0“1”

1“4”

2“5”

但是,在案例2中,它给出了-

0 145


请有人解释一下在案例1中进行对象属性检查的正确方法(读取select下拉列表的值)

不要用引号括起来,你是说

var nativetestTemplates = "[145]";
你想让它说

var nativetestTemplates = [145];
因此,您的代码应该是:

var nativetestTemplates = <?php echo json_encode($NATIVE_TEST_TEMPLATE_IDS); ?>; //PHP array into JSON.
不过别担心,你可以解决这个问题

var testAdnetworkId = parseInt($("#adnetwork_type").val()); //reading selected dropdown value
parseInt()
是你的朋友。它尽力用数字替换字符串或其他变量,这正是您想要的。您将在这里看到它的工作原理

有关变量类型的详细信息:
不要用引号括起来,你是说

var nativetestTemplates = "[145]";
你想让它说

var nativetestTemplates = [145];
因此,您的代码应该是:

var nativetestTemplates = <?php echo json_encode($NATIVE_TEST_TEMPLATE_IDS); ?>; //PHP array into JSON.
不过别担心,你可以解决这个问题

var testAdnetworkId = parseInt($("#adnetwork_type").val()); //reading selected dropdown value
parseInt()
是你的朋友。它尽力用数字替换字符串或其他变量,这正是您想要的。您将在这里看到它的工作原理

有关变量类型的详细信息:
不要用引号括起来,你是说

var nativetestTemplates = "[145]";
你想让它说

var nativetestTemplates = [145];
因此,您的代码应该是:

var nativetestTemplates = <?php echo json_encode($NATIVE_TEST_TEMPLATE_IDS); ?>; //PHP array into JSON.
不过别担心,你可以解决这个问题

var testAdnetworkId = parseInt($("#adnetwork_type").val()); //reading selected dropdown value
parseInt()
是你的朋友。它尽力用数字替换字符串或其他变量,这正是您想要的。您将在这里看到它的工作原理

有关变量类型的详细信息:
不要用引号括起来,你是说

var nativetestTemplates = "[145]";
你想让它说

var nativetestTemplates = [145];
因此,您的代码应该是:

var nativetestTemplates = <?php echo json_encode($NATIVE_TEST_TEMPLATE_IDS); ?>; //PHP array into JSON.
不过别担心,你可以解决这个问题

var testAdnetworkId = parseInt($("#adnetwork_type").val()); //reading selected dropdown value
parseInt()
是你的朋友。它尽力用数字替换字符串或其他变量,这正是您想要的。您将在这里看到它的工作原理

有关变量类型的详细信息:

您需要在javascript中解析json变量,如下所示:

nativetestTemplates=JSON.parse(nativetestTemplates)


现在,nativetestTemplates.length将为您提供正确的结果。

您需要在javascript中解析json变量,如下所示:

nativetestTemplates=JSON.parse(nativetestTemplates)


现在,nativetestTemplates.length将为您提供正确的结果。

您需要在javascript中解析json变量,如下所示:

nativetestTemplates=JSON.parse(nativetestTemplates)


现在,nativetestTemplates.length将为您提供正确的结果。

您需要在javascript中解析json变量,如下所示:

nativetestTemplates=JSON.parse(nativetestTemplates)


现在,nativetestTemplates.length将为您提供正确的结果。

是否尝试对其进行分析
var nativetestTemplates=JSON.parse(JSON_编码_字符串)在哪一步,它将如何受益?我现在已经纠正了这个错误,正如Djave所指出的。是否尝试解析它
var nativetestTemplates=JSON.parse(JSON_编码_字符串)在哪一步,它将如何受益?我现在已经纠正了这个错误,正如Djave所指出的。是否尝试解析它
var nativetestTemplates=JSON.parse(JSON_编码_字符串)在哪一步,它将如何受益?我现在已经纠正了这个错误,正如Djave所指出的。是否尝试解析它
var nativetestTemplates=JSON.parse(JSON_编码_字符串)在哪一步,它将如何受益?我现在已经纠正了Djave指出的错误。谢谢你指出错误。但我仍然有一个问题。请查看我的问题更新。感谢您指出错误。但我仍然有一个问题。请查看我的问题更新。感谢您指出错误。但我仍然有一个问题。请查看我的问题更新。感谢您指出错误。但我仍然有一个问题。请检查我的问题更新。