1

次のJSOnを返すWeb APIがあります:-

{'url': 'http://192.168.10.50/WCF/00vf/img?imgid=1', 'desc': 'firstdoc'},{'url': 'http://192.168.10.50/WCF/vf/img?imgid=2', 'desc': 'sedonddoc'},{'url': 'http://192.168.10.50/WCF/vf/img?imgid=3', 'desc': 'thirddoc'}

返された JSON に基づいてリンクを作成する必要があるため<a>、次の jquery を記述しようとしましたが、うまくいきませんでした:-

<script type="text/javascript">
$(function() {
    $.getJSON("http://localhost:1431/home/statisjson",
  {

    datetype: "json"
  },
  function(data) {
      $.each(data, function (key, val) {
      $("<a/>").attr("href", val.url).appendTo("#links");

    });
  });
})
</script>
<div id="links"></div>

それでも、「desc」JSON オブジェクトをリンク テキストとして追加する必要がありますが、その方法がわかりません。

ブラジル

::更新:: スクリプトを次のように更新しましたが、機能しませんでした:-

@section scripts {
 <script type="text/javascript">
     $(document).ready(function () {



         $.ajax({
             type: "GET",
             url: 'http://localhost:1431/Home/statisjson',
             dataType: "JSON",

             success: function (result) {

                 $.each(result, function (key, val) {


                     $("<a>", { href: val.url, text: val.desc }).appendTo("#links");


                 });
             }
         });


     });

 </script>

JSON を返した asp.net メソッドは次のようになります。

public ActionResult statisjson(int start = 0, int rows = 50)
        {
 var j = "[{'url': 'http://192.168.10.50/img?imgid=1', 'desc': 'firstdoc'},{'url': 'http://192.168.10.50/img?imgid=2', 'desc': 'sedonddoc'},{'url': 'http://192.168.10.50/img?imgid=3', 'desc': 'thirddoc'}]"; 
return Content(j, "application/json");

        }
4

3 に答える 3

5

HTML を最初の引数として渡す場合、プロパティを含むオブジェクト リテラルを 2 番目の引数として渡すことができます。

$("<a>", { href: val.url, text: val.desc }).appendTo("#links");
于 2012-11-13T13:16:30.113 に答える
0

これを使用してみてください:

$("<a>" + val.desc + "</a>").attr("href", val.url).appendTo("#links");
于 2012-11-13T13:15:53.217 に答える
0

これは有効な JSON ではありません。を追加する必要があります[]

[{'url': 'http://192.168.10.50/WCF/00vf/img?imgid=1', 'desc': 'firstdoc'},{'url': 'http://192.168.10.50/WCF/vf/img?imgid=2', 'desc': 'sedonddoc'},{'url': 'http://192.168.10.50/WCF/vf/img?imgid=3', 'desc': 'thirddoc'}]

そして、これを試してリンクを作成する必要があります:

$("<a/>").attr("href", val.url).text(val.desc).appendTo("#links");
于 2012-11-13T13:17:12.457 に答える