1

Bing API からデータを取得する JavaScript 検索スクリプトがあります。ただし、ユーザー クエリの結果が見つからない場合は、空白のページが表示されます。「Nothing found.」などの結果なしメッセージを表示するスクリプトを作成するにはどうすればよいでしょうか?

ajax({
    type:"GET",
    url:"http://api.bing.net/json.aspx?appId=APPID&query=QUERY&sources=web&adult=strict&web.count=10&cc=en&jsontype=callback&jsoncallback=?",
    dataType:"jsonp",
    success:function(a){
        $ID("results").innerHTML="<h2>Search</h2>";
        for(var c=0;c<a.SearchResponse.Web.Results.length;c++){
            var d=a.SearchResponse.Web.Results[c];
            $ID("results").innerHTML+="<a href=\""+d.Url+"\" id=\"result\"><div id=\"title\">"+d.Title+"</div><div id=\"url\">"+d.DisplayUrl+"</div>"+d.Description+"</a>"
        }
    }
})
4

2 に答える 2

1
   function noResults() {
     $ID("results").innerHTML="<h2>Nothing to see here...</h2>";
   }

   ajax({
        type:"GET",
        url:"http://api.bing.net/json.aspx?appId=APPID&query=QUERY&sources=web&adult=strict&web.count=10&cc=en&jsontype=callback&jsoncallback=?",
        dataType:"jsonp",
        success:function(a){
            if (!a.SearchResponse.Web.Results ||
                !a.SearchResponse.Web.Results.length) {
              noResults();
            } else {
              // results processing here
            }
        },
        error : function (a) {
            noResults();
        }
   })

おそらくあなたが望むものではありませんが、それは多かれ少なかれあなたが求めたものです.

于 2012-06-07T18:47:20.753 に答える
0
ajax({
type:"GET",
url:"http://api.bing.net/json.aspx?appId=APPID&query=QUERY&sources=web&adult=strict&web.count=10&cc=en&jsontype=callback&jsoncallback=?",
dataType:"jsonp",
success:function(a){
    $ID("results").innerHTML="<h2>Search</h2>";
    if(a.SearchResponse.Web.Results.length > 0 ) {
       for(var c=0;c<a.SearchResponse.Web.Results.length;c++){
          var d=a.SearchResponse.Web.Results[c];
          $ID("results").innerHTML+="<a href=\""+d.Url+"\" id=\"result\"><div id=\"title\">"+d.Title+"</div><div id=\"url\">"+d.DisplayUrl+"</div>"+d.Description+"</a>"
       }
    } else {
        $ID("results").innerHTML = "Sorry no result found"; //you can customize this
    }
}

}))

于 2012-06-07T18:47:10.660 に答える