错误消息无法在 'Node' 上执行 'appendChild':参数 1 不是 'Node' 类型
Error message Failed to execute 'appendChild' on 'Node': parameter 1 is not of type 'Node'
我正在尝试使用 ajax 填充我的 jquery 移动列表视图,以通过使用 php Mysql 中的数据进行查询来获取我的电影列表36=]。
我成功地以正确的 json 格式获取了数据,但是在我的 javascript 中我在线收到错误.... li.appendChild("a")
HTML
<div data-role="main" class="ui-content">
<ul data-role="listview" id="list" >
</ul >
</div>
getcatagories2_mobile.php
<?php
include("includes/connection.php");
$q="Comedy";
$resultActor = mysqli_query($con,"SELECT id,title, plot,catagory,release_date,rated FROM ".TBL_DATA." WHERE catagory LIKE '%".$q."%' ORDER BY title ");
$x= array();
while($rowMovie = mysqli_fetch_array($resultActor)) {
$x[]= array("Category" => $rowMovie['title']);
}
$jsonarray=json_encode($x);
echo $jsonarray;
?>
successful sample JSON format output
[{"Category":"22 Jump Street"},{"Category":"27 Dresses"}]
my called javascript function using ajax...
var xhr = new XMLHttpRequest();
xhr.open("GET", "getcatagories2_mobile.php", true);
xhr.onreadystatechange = function()
{
if (xhr.readyState == 4 && xhr.status == 200)
{
var list = document.getElementById("list");
var data= xhr.responseText;
var vec= JSON.parse(data);
vec.forEach(
function(ob)
{
var li = document.createElement("li");
var a = document.createElement("a");
var text = document.createTextNode("ob.Category");
a.appendChild(text);
a.setAttribute("href","#");
li.appendChild("a");
list.appendChild("li");
}
);
$('#list').listview('refresh');
}
}
xhr.send();
};
当我使用 google 调试时,我在行-> li.appendChild("a") 上出现错误,当我将鼠标悬停在 var vec= JSON.parse(data) 上时, 数据显示正确。
我想要实现的只是让我的 jquery 移动设备如此执行
<div data-role="main" class="ui-content">
<ul data-role="listview" id="list" >
<li><a href="#">22 Jump Street</a></li>
<li><a href="#">27 Dresses</a></li>
</ul >
</div>
您应该从 appendChild-calls 中删除引号,否则您将一个字符串传递给该函数并且它不知道如何处理它。 Wihtout 引号将 object-reference 传递给函数。
li.appendChild(a);
list.appendChild(li);
我正在尝试使用 ajax 填充我的 jquery 移动列表视图,以通过使用 php Mysql 中的数据进行查询来获取我的电影列表36=]。 我成功地以正确的 json 格式获取了数据,但是在我的 javascript 中我在线收到错误.... li.appendChild("a")
HTML
<div data-role="main" class="ui-content">
<ul data-role="listview" id="list" >
</ul >
</div>
getcatagories2_mobile.php
<?php
include("includes/connection.php");
$q="Comedy";
$resultActor = mysqli_query($con,"SELECT id,title, plot,catagory,release_date,rated FROM ".TBL_DATA." WHERE catagory LIKE '%".$q."%' ORDER BY title ");
$x= array();
while($rowMovie = mysqli_fetch_array($resultActor)) {
$x[]= array("Category" => $rowMovie['title']);
}
$jsonarray=json_encode($x);
echo $jsonarray;
?>
successful sample JSON format output
[{"Category":"22 Jump Street"},{"Category":"27 Dresses"}]
my called javascript function using ajax...
var xhr = new XMLHttpRequest();
xhr.open("GET", "getcatagories2_mobile.php", true);
xhr.onreadystatechange = function()
{
if (xhr.readyState == 4 && xhr.status == 200)
{
var list = document.getElementById("list");
var data= xhr.responseText;
var vec= JSON.parse(data);
vec.forEach(
function(ob)
{
var li = document.createElement("li");
var a = document.createElement("a");
var text = document.createTextNode("ob.Category");
a.appendChild(text);
a.setAttribute("href","#");
li.appendChild("a");
list.appendChild("li");
}
);
$('#list').listview('refresh');
}
}
xhr.send();
};
当我使用 google 调试时,我在行-> li.appendChild("a") 上出现错误,当我将鼠标悬停在 var vec= JSON.parse(data) 上时, 数据显示正确。
我想要实现的只是让我的 jquery 移动设备如此执行
<div data-role="main" class="ui-content">
<ul data-role="listview" id="list" >
<li><a href="#">22 Jump Street</a></li>
<li><a href="#">27 Dresses</a></li>
</ul >
</div>
您应该从 appendChild-calls 中删除引号,否则您将一个字符串传递给该函数并且它不知道如何处理它。 Wihtout 引号将 object-reference 传递给函数。
li.appendChild(a);
list.appendChild(li);