在javascript中存储为数组成员的函数/命令
test.PHP上的PHP代码:在javascript中存储为数组成员的函数/命令,javascript,php,jquery,Javascript,Php,Jquery,test.PHP上的PHP代码: <?php $con = mysqli_connect("localhost", "user", "password", "DB"); if (mysqli_connect_errno()){ echo "failed to connect:" . mysqli_connect_error(); } $grab = mysqli_query($con, "SELECT * FROM DB"); $cars = array(); while($ro
<?php
$con = mysqli_connect("localhost", "user", "password", "DB");
if (mysqli_connect_errno()){
echo "failed to connect:" . mysqli_connect_error();
}
$grab = mysqli_query($con, "SELECT * FROM DB");
$cars = array();
while($row = mysqli_fetch_assoc($grab)){
array_push($cars, array("id" => $row["Id"], "name" => $row["Name"], "color" => $row["Color"];
}
echo json_encode($cars);
有人能告诉我为什么这不起作用吗?我在iNLarr[I]上得到空引用。我猜我不能像以前那样将命令存储在数组中。有人能告诉我一种方法吗。如果要将“命令”放入数组,需要将函数放入:
iNRarr = [
function(html) {
document.getElementById("itemNameLink1").innerHTML = html;
}, function(html) {
document.getElementById("itemNameLink2").innerHTML = html;
}, function(html) {
document.getElementById("itemNameLink3").innerHTML = html;
}
];
然后调用如下函数:
$.get("test.php", function($cars){
$.each($cars, function(i, car){
if (iNLarr[i]) {
iNLarr[i](car.name);
}
});
}, "json");
var iNLarr = new Array();
iNLarr[0] = document.getElementById("itemNameLink1");
iNLarr[1] = document.getElementById("itemNameLink2");
iNLarr[2] = document.getElementById("itemNameLink3");
如果要将“命令”放入数组,则需要将函数放入:
iNRarr = [
function(html) {
document.getElementById("itemNameLink1").innerHTML = html;
}, function(html) {
document.getElementById("itemNameLink2").innerHTML = html;
}, function(html) {
document.getElementById("itemNameLink3").innerHTML = html;
}
];
然后调用如下函数:
$.get("test.php", function($cars){
$.each($cars, function(i, car){
if (iNLarr[i]) {
iNLarr[i](car.name);
}
});
}, "json");
var iNLarr = new Array();
iNLarr[0] = document.getElementById("itemNameLink1");
iNLarr[1] = document.getElementById("itemNameLink2");
iNLarr[2] = document.getElementById("itemNameLink3");
如果要将“命令”放入数组,则需要将函数放入:
iNRarr = [
function(html) {
document.getElementById("itemNameLink1").innerHTML = html;
}, function(html) {
document.getElementById("itemNameLink2").innerHTML = html;
}, function(html) {
document.getElementById("itemNameLink3").innerHTML = html;
}
];
然后调用如下函数:
$.get("test.php", function($cars){
$.each($cars, function(i, car){
if (iNLarr[i]) {
iNLarr[i](car.name);
}
});
}, "json");
var iNLarr = new Array();
iNLarr[0] = document.getElementById("itemNameLink1");
iNLarr[1] = document.getElementById("itemNameLink2");
iNLarr[2] = document.getElementById("itemNameLink3");
如果要将“命令”放入数组,则需要将函数放入:
iNRarr = [
function(html) {
document.getElementById("itemNameLink1").innerHTML = html;
}, function(html) {
document.getElementById("itemNameLink2").innerHTML = html;
}, function(html) {
document.getElementById("itemNameLink3").innerHTML = html;
}
];
然后调用如下函数:
$.get("test.php", function($cars){
$.each($cars, function(i, car){
if (iNLarr[i]) {
iNLarr[i](car.name);
}
});
}, "json");
var iNLarr = new Array();
iNLarr[0] = document.getElementById("itemNameLink1");
iNLarr[1] = document.getElementById("itemNameLink2");
iNLarr[2] = document.getElementById("itemNameLink3");
如果您只返回了3辆车和3个元素,由于您使用的是jQuery,您可以将其简化为:
var $elements=$('#itemNameLink1,itemnameLink2,itemNameLink3');
$.get("test.php", function($cars){
$.each($cars, function(i, car){
$elements.eq(i).html(car.name);
});
}, "json");
eq()
方法用于按索引和$的第一个参数查找集合中的元素。当输入为数组时,每个
都是数组元素的索引如果您只返回了3辆车和3个元素,因为您使用的是jQuery,所以可以将其简化为:
var $elements=$('#itemNameLink1,itemnameLink2,itemNameLink3');
$.get("test.php", function($cars){
$.each($cars, function(i, car){
$elements.eq(i).html(car.name);
});
}, "json");
eq()
方法用于按索引和$的第一个参数查找集合中的元素。当输入为数组时,每个
都是数组元素的索引如果您只返回了3辆车和3个元素,因为您使用的是jQuery,所以可以将其简化为:
var $elements=$('#itemNameLink1,itemnameLink2,itemNameLink3');
$.get("test.php", function($cars){
$.each($cars, function(i, car){
$elements.eq(i).html(car.name);
});
}, "json");
eq()
方法用于按索引和$的第一个参数查找集合中的元素。当输入为数组时,每个
都是数组元素的索引如果您只返回了3辆车和3个元素,因为您使用的是jQuery,所以可以将其简化为:
var $elements=$('#itemNameLink1,itemnameLink2,itemNameLink3');
$.get("test.php", function($cars){
$.each($cars, function(i, car){
$elements.eq(i).html(car.name);
});
}, "json");
eq()
方法用于按索引和$的第一个参数查找集合中的元素。当输入为数组时,每个
都是数组元素的索引好的,我有几件事需要更改:
首先,您可能会在dearray\u push
行上遇到语法错误。您没有关闭数组\u push
命令,请将)
添加到其中
我认为您对javascript的定义不正确。使用对象[number]
将无法获取它。试着这样做:
$.get("test.php", function($cars){
$.each($cars, function(i, car){
if (iNLarr[i]) {
iNLarr[i](car.name);
}
});
}, "json");
var iNLarr = new Array();
iNLarr[0] = document.getElementById("itemNameLink1");
iNLarr[1] = document.getElementById("itemNameLink2");
iNLarr[2] = document.getElementById("itemNameLink3");
另一件事是,iNLarr[i]=this.name代码>也不起作用。你可能是说:
iNLarr[i].innerHTML = $(this).attr('name');
因此,您的完整版本可能是这样的:
$.get("test.php", function($cars){
$.each($cars, function(i, car){
if (iNLarr[i]) {
iNLarr[i](car.name);
}
});
}, "json");
var iNLarr = new Array();
iNLarr[0] = document.getElementById("itemNameLink1");
iNLarr[1] = document.getElementById("itemNameLink2");
iNLarr[2] = document.getElementById("itemNameLink3");
您的PHP:
<?php
$con = mysqli_connect("localhost", "user", "password", "DB");
if (mysqli_connect_errno()){
echo "failed to connect:" . mysqli_connect_error();
}
$grab = mysqli_query($con, "SELECT * FROM DB");
$cars = array();
while($row = mysqli_fetch_assoc($grab)){
array_push($cars, array("id" => $row["Id"], "name" => $row["Name"], "color" => $row["Color"]));
}
echo json_encode($cars);
?>
您的HTML/Javascript:
<div id="itemNameLink1">1</div>
<div id="itemNameLink2">2</div>
<div id="itemNameLink3">3</div>
<script type="text/javascript" src="http://code.jquery.com/jquery-1.11.1.min.js"></script>
<script>
var iNLarr = new Array();
iNLarr[0] = document.getElementById("itemNameLink1");
iNLarr[1] = document.getElementById("itemNameLink2");
iNLarr[2] = document.getElementById("itemNameLink3");
var i = 0;
$.get("test.php", function($cars){
$.each($cars, function(){
iNLarr[i].innerHTML = $(this).attr('name');
i++;
});
}, "json");
</script>
1
2.
3.
var iNLarr=新数组();
iNLarr[0]=document.getElementById(“itemNameLink1”);
iNLarr[1]=document.getElementById(“itemNameLink2”);
iNLarr[2]=document.getElementById(“itemNameLink3”);
var i=0;
$.get(“test.php”,函数($cars){
$。每个($cars,function(){
iNLarr[i].innerHTML=$(this.attr('name');
i++;
});
}“json”);
好的,我有几件事你可能想改变:
首先,您可能会在dearray\u push
行上遇到语法错误。您没有关闭数组\u push
命令,请将)
添加到其中
我认为您对javascript的定义不正确。使用对象[number]
将无法获取它。试着这样做:
$.get("test.php", function($cars){
$.each($cars, function(i, car){
if (iNLarr[i]) {
iNLarr[i](car.name);
}
});
}, "json");
var iNLarr = new Array();
iNLarr[0] = document.getElementById("itemNameLink1");
iNLarr[1] = document.getElementById("itemNameLink2");
iNLarr[2] = document.getElementById("itemNameLink3");
另一件事是,iNLarr[i]=this.name代码>也不起作用。你可能是说:
iNLarr[i].innerHTML = $(this).attr('name');
因此,您的完整版本可能是这样的:
$.get("test.php", function($cars){
$.each($cars, function(i, car){
if (iNLarr[i]) {
iNLarr[i](car.name);
}
});
}, "json");
var iNLarr = new Array();
iNLarr[0] = document.getElementById("itemNameLink1");
iNLarr[1] = document.getElementById("itemNameLink2");
iNLarr[2] = document.getElementById("itemNameLink3");
您的PHP:
<?php
$con = mysqli_connect("localhost", "user", "password", "DB");
if (mysqli_connect_errno()){
echo "failed to connect:" . mysqli_connect_error();
}
$grab = mysqli_query($con, "SELECT * FROM DB");
$cars = array();
while($row = mysqli_fetch_assoc($grab)){
array_push($cars, array("id" => $row["Id"], "name" => $row["Name"], "color" => $row["Color"]));
}
echo json_encode($cars);
?>
您的HTML/Javascript:
<div id="itemNameLink1">1</div>
<div id="itemNameLink2">2</div>
<div id="itemNameLink3">3</div>
<script type="text/javascript" src="http://code.jquery.com/jquery-1.11.1.min.js"></script>
<script>
var iNLarr = new Array();
iNLarr[0] = document.getElementById("itemNameLink1");
iNLarr[1] = document.getElementById("itemNameLink2");
iNLarr[2] = document.getElementById("itemNameLink3");
var i = 0;
$.get("test.php", function($cars){
$.each($cars, function(){
iNLarr[i].innerHTML = $(this).attr('name');
i++;
});
}, "json");
</script>
1
2.
3.
var iNLarr=新数组();
iNLarr[0]=document.getElementById(“itemNameLink1”);
iNLarr[1]=document.getElementById(“itemNameLink2”);
iNLarr[2]=document.getElementById(“itemNameLink3”);
var i=0;
$.get(“test.php”,函数($cars){
$。每个($cars,function(){
iNLarr[i].innerHTML=$(this.attr('name');
i++;
});
}“json”);
好的,我有几件事你可能想改变:
首先,您可能会在dearray\u push
行上遇到语法错误。您没有关闭数组\u push
命令,请将)
添加到其中
我认为您对javascript的定义不正确。使用对象[number]
将无法获取它。试着这样做:
$.get("test.php", function($cars){
$.each($cars, function(i, car){
if (iNLarr[i]) {
iNLarr[i](car.name);
}
});
}, "json");
var iNLarr = new Array();
iNLarr[0] = document.getElementById("itemNameLink1");
iNLarr[1] = document.getElementById("itemNameLink2");
iNLarr[2] = document.getElementById("itemNameLink3");
另一件事是,iNLarr[i]=this.name代码>也不起作用。你可能是说:
iNLarr[i].innerHTML = $(this).attr('name');
因此,您的完整版本可能是这样的:
$.get("test.php", function($cars){
$.each($cars, function(i, car){
if (iNLarr[i]) {
iNLarr[i](car.name);
}
});
}, "json");
var iNLarr = new Array();
iNLarr[0] = document.getElementById("itemNameLink1");
iNLarr[1] = document.getElementById("itemNameLink2");
iNLarr[2] = document.getElementById("itemNameLink3");
您的PHP:
<?php
$con = mysqli_connect("localhost", "user", "password", "DB");
if (mysqli_connect_errno()){
echo "failed to connect:" . mysqli_connect_error();
}
$grab = mysqli_query($con, "SELECT * FROM DB");
$cars = array();
while($row = mysqli_fetch_assoc($grab)){
array_push($cars, array("id" => $row["Id"], "name" => $row["Name"], "color" => $row["Color"]));
}
echo json_encode($cars);
?>
您的HTML/Javascript:
<div id="itemNameLink1">1</div>
<div id="itemNameLink2">2</div>
<div id="itemNameLink3">3</div>
<script type="text/javascript" src="http://code.jquery.com/jquery-1.11.1.min.js"></script>
<script>
var iNLarr = new Array();
iNLarr[0] = document.getElementById("itemNameLink1");
iNLarr[1] = document.getElementById("itemNameLink2");
iNLarr[2] = document.getElementById("itemNameLink3");
var i = 0;
$.get("test.php", function($cars){
$.each($cars, function(){
iNLarr[i].innerHTML = $(this).attr('name');
i++;
});
}, "json");
</script>
1
2.
3.
var iNLarr=新数组();
iNLarr[0]=document.getElementById(“itemNameLink1”);
iNLarr[1]=document.getElementById(“itemNameLink2”);
iNLarr[2]=document.getElementById(“itemNameLink3”);
var i=0;
$.get(“test.php”,函数($cars){
$。每个($cars,function(){
iNLarr[i].innerHTML=$(this.attr('name');
i++;
});
}“json”);
好的,我有几件事你可能想改变:
首先,您可能会在dearray\u push
行上遇到语法错误。您没有关闭数组\u push
命令,请将)
添加到其中
我认为您对javascript的定义不正确。使用对象[number]
将无法获取它。试着这样做:
$.get("test.php", function($cars){
$.each($cars, function(i, car){
if (iNLarr[i]) {
iNLarr[i](car.name);
}
});
}, "json");
var iNLarr = new Array();
iNLarr[0] = document.getElementById("itemNameLink1");
iNLarr[1] = document.getElementById("itemNameLink2");
iNLarr[2] = document.getElementById("itemNameLink3");
另一件事是,iNLarr[i]=this.name代码>也不起作用。你可能是说:
iNLarr[i].innerHTML = $(this).attr('name');
因此,您的完整版本可能是这样的:
$.get("test.php", function($cars){
$.each($cars, function(i, car){
if (iNLarr[i]) {
iNLarr[i](car.name);
}
});
}, "json");
var iNLarr = new Array();
iNLarr[0] = document.getElementById("itemNameLink1");
iNLarr[1] = document.getElementById("itemNameLink2");
iNLarr[2] = document.getElementById("itemNameLink3");
您的PHP:
<?php
$con = mysqli_connect("localhost", "user", "password", "DB");
if (mysqli_connect_errno()){
echo "failed to connect:" . mysqli_connect_error();
}
$grab = mysqli_query($con, "SELECT * FROM DB");
$cars = array();
while($row = mysqli_fetch_assoc($grab)){
array_push($cars, array("id" => $row["Id"], "name" => $row["Name"], "color" => $row["Color"]));
}
echo json_encode($cars);
?>
您的HTML/Javascript:
<div id="itemNameLink1">1</div>
<div id="itemNameLink2">2</div>
<div id="itemNameLink3">3</div>
<script type="text/javascript" src="http://code.jquery.com/jquery-1.11.1.min.js"></script>
<script>
var iNLarr = new Array();
iNLarr[0] = document.getElementById("itemNameLink1");
iNLarr[1] = document.getElementById("itemNameLink2");
iNLarr[2] = document.getElementById("itemNameLink3");
var i = 0;
$.get("test.php", function($cars){
$.each($cars, function(){
iNLarr[i].innerHTML = $(this).attr('name');
i++;
});
}, "json");
</script>
1
2.
3.
var iNLarr=新数组();
iNLarr[0]=document.getElementById(“itemNameLink1”);
iNLarr[1]=document.getElementById(“itemNameLink2”);
iNLarr[2]=document.getElementById(“itemNameLink3”);
var i=0;
$.get(“test.php”,函数($cars){
$。每个($cars,function(){
iNLarr[i].innerHTML=$(this.attr('name');
i++;
});