Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/database/10.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 正确迭代JSON返回_Javascript_Asp.net_Json_Asp.net Mvc 3 - Fatal编程技术网

Javascript 正确迭代JSON返回

Javascript 正确迭代JSON返回,javascript,asp.net,json,asp.net-mvc-3,Javascript,Asp.net,Json,Asp.net Mvc 3,我的剧本有一个奇怪的问题。我得到了一个JSON结果集,并希望迭代它,然后显示在一个div中。我检查了fiddler,我可以看到整个结果集被返回,如下所示 [{"EPubID":71,"SerialID":1,"PartnerID":343,"Partner":"Aberdeen, City of ","PublicationTitle":"Uploading multiple files test","AuthFirstName":null,"AuthMiddleName":null,"Auth

我的剧本有一个奇怪的问题。我得到了一个JSON结果集,并希望迭代它,然后显示在一个div中。我检查了fiddler,我可以看到整个结果集被返回,如下所示

[{"EPubID":71,"SerialID":1,"PartnerID":343,"Partner":"Aberdeen, City of ","PublicationTitle":"Uploading multiple files test","AuthFirstName":null,"AuthMiddleName":null,"AuthLastName":null,"AuthFullName":null,"PublicationYear":2011,"SubmitterEmail":null,"VolumeNumber":null,"Issue":null,"AlreadyInCatalog":false,"InCatalog":"No","Status":"D","Notes":"testing multiple file uploads","IsMonograph":false,"Monographed":"No","SubmittedDate":"\/Date(1317913458810)\/","SubmittedBy":"admin","ApprovedDate":"\/Date(1317914842263)\/","ApprovedBy":"admin","SubmittingPartnerID":0,"OriginalRefId":"343-71","SerialName":"None","URL":null,"InfoRecordID":0,"LastModified":"\/Date(-62135568000000)\/","IsSerial":false,"Approved":false,"Delete":false,"Pending":false,"files":null},{"EPubID":72,"SerialID":19,"PartnerID":26,"Partner":"Digital Archives","PublicationTitle":"testing multiple file uploads ","AuthFirstName":null,"AuthMiddleName":null,"AuthLastName":null,"AuthFullName":null,"PublicationYear":2001,"SubmitterEmail":null,"VolumeNumber":"1","Issue":"1","AlreadyInCatalog":false,"InCatalog":"No","Status":"A","Notes":"this should work","IsMonograph":false,"Monographed":"No","SubmittedDate":"\/Date(1317915134767)\/","SubmittedBy":"admin","ApprovedDate":"\/Date(1317915430627)\/","ApprovedBy":"admin","SubmittingPartnerID":0,"OriginalRefId":"26-72","SerialName":"Fake Test Serial","URL":null,"InfoRecordID":0,"LastModified":"\/Date(-62135568000000)\/","IsSerial":false,"Approved":false,"Delete":false,"Pending":false,"files":null}] 
问题是我的脚本只显示返回的第一个项目,没有显示其他内容。这是我的剧本

function SearchExistingEpubs() {
    var title = $("input#PublicationTitle").val();

    $('#Results').hide();
    $("div#SearchResults").innerHTML = '';
    $.getJSON('/EPub/SearchExistingEpubs/' + title, null, function (data) {
        var items = [];
        var found = false;
        $.each(data, function (key, val) {
            found = true;
            $("div#SearchResults").empty();
            $("div#SearchResults").append("Title: " + val.PublicationTitle + " Owning Partner: " + val.Partner + " Year: " + val.PublicationYear) ;
            $('#Results').show();
        });
        if (!found) {
            $("div#SearchResults").empty();
            //$("div#SearchResults").html('');
            $("div#SearchResults").append("No documents found");
            $('#Results').show();
            //$('#Results').slideUp(10000);
            $('#Results').animate({height:'toggle'},10000);
            //$('#Results').fadeOut(10000);
        }
        //$('#Results').show();
    });        
};

在您的
.each
循环中调用
$(“div#SearchResults”).empty()这将清除以前附加到此div的任何内容

请尝试以下操作:

function SearchExistingEpubs() {
  var title = $("input#PublicationTitle").val();
  $('#Results').hide();
  $("div#SearchResults").empty();
  $.getJSON('/EPub/SearchExistingEpubs/' + title, null, function (data) {
    $("div#SearchResults").empty();
    var items = [];
    if (data.length) {
      $.each(data, function (key, val) {
        $("div#SearchResults").append("Title: " + val.PublicationTitle + " Owning Partner: " + val.Partner + " Year: " + val.PublicationYear);
      });
      $('#Results').show();
    } else {
      $("div#SearchResults").append("No documents found");
      $('#Results').show();
      $('#Results').animate({height:'toggle'},10000);
    }
  });        
};

调用
empty()


我之前在一个循环中建议dom更新被否决了——社区是一个好老师:)@samack-没问题-祝你好运
$.each(data, function (key, val) {
    found = true;
    $("div#SearchResults").empty();  // <------ REMOVE this line
    $("div#SearchResults").append("Title: " + val.PublicationTitle + " Owning Partner: " + val.Partner + " Year: " + val.PublicationYear) ;
    $('#Results').show();
});
var content = '';
$.each(data, function (key, val) {
    found = true;
    content += "Title: " + val.PublicationTitle + " Owning Partner: " + val.Partner + " Year: " + val.PublicationYear;
});
$("div#SearchResults").append(content);
$('#Results').show();