jquery如何知道要返回的数据类型
我正在使用php生成一些包装在html5标记中的json数据,我不确定jquery如何知道返回什么数据类型 这是phpjquery如何知道要返回的数据类型,jquery,Jquery,我正在使用php生成一些包装在html5标记中的json数据,我不确定jquery如何知道返回什么数据类型 这是php echo '<section id="stuff">'; echo json_encode($jsonData); echo '</section>'; echo'; echo json_编码($jsonData); 回声'; 为了获得section标记中的数据,我这样处理我的数据 $.ajax({
echo '<section id="stuff">';
echo json_encode($jsonData);
echo '</section>';
echo';
echo json_编码($jsonData);
回声';
为了获得section标记中的数据,我这样处理我的数据
$.ajax({
url: 'getdata.php',
data: "",
dataType: 'html',
success: function(data)
{
var thedata = $(data).filter('#stuff').html();
var jobject = JSON.parse(thedata);
for(var i = 0; i < jobject.length; i++) {
var item = jobject[i];
$.ajax({
url:'getdata.php',
数据:“,
数据类型:“html”,
成功:功能(数据)
{
var thedata=$(data.filter('#stuff').html();
var jobject=JSON.parse(thedata);
对于(var i=0;i
这里指定的数据类型为html,但当我指定json时,将不显示任何内容,但获取成功
然后我使用jquery进行速记,一切正常
$.get('getdata.php', function(data) {
var thedata = $(data).filter('#stuff').html();
var jobject = JSON.parse(thedata);
for(var i = 0; i < jobject.length; i++) {
var item = jobject[i];
$.get('getdata.php',函数(数据){
var thedata=$(data.filter('#stuff').html();
var jobject=JSON.parse(thedata);
对于(var i=0;i
jquery速记方法是否猜测我的数据类型是HTML?该数据类型为jquery提供了一个关于服务器响应类型的提示,在第一个示例中,jquery希望响应是文本(好的,评估了带有脚本标记的HTML),但当您在数据类型中指定JSON时,jQuery将尝试将其转换为JavaScript对象,这将失败 在后一个示例中,jQuery猜测响应是JSON,忽略了过滤器和HTML转换,并将
$(数据)
作为JavaScript对象处理
总的来说,我认为没有理由将您从服务器编码的JSON对象封装在HTML中,它应该作为任何其他对象进行结构化和解析
<section id="stuff">
'{ "Object": [{"Value" : "1", "Text" : "2 in HTML"},{"Value" : "2", "Text" : "3 in HTML"}] }'
</section>
“{”对象“:[{”值“:“1”,“文本“:“2在HTML中”},{”值“:“2”,“文本“:“3在HTML中”}]}”
var json='{“对象”:[{“值”:“1”,“文本”:“2”},{“值”:“2”,“文本”:“3”}]}'
var jobject=JSON.parse(JSON);
对于(var i=0;i
我之所以这样包装json,是因为我必须一次获取大量数据,比如从4个相关的表中获取数据。你知道我如何从一个json对象中获取所有4个数据,而不是将4个不同的数据集构造成4个唯一的标记吗?。
var json = '{ "Object": [{"Value" : "1", "Text" : "2"},{"Value" : "2", "Text" : "3"}] }'
var jobject = JSON.parse(json);
for(var i = 0; i < jobject.Object.length; i++) {
var item = jobject.Object[i];
alert(item.Value);
}
var jsonInHtml = $("#stuff").html();
var jobject = JSON.parse(jsonInHtml);
// A JavaScript object won't be frmed at this point
for(var i = 0; i < jobject.Object.length; i++) {
var item = jobject.Object[i];
alert(item.Value);
}