0

これは私を困惑させます。次のjson関数を作成するにはどうすればよいですか...

$.mfjson = function() {
var mjson = { LinkToDesktopSite : [    
{"section":"aboutus","name":"DemoA","mobile":"demoa.htm","desktop":"/desktop/demoa.aspx"},
{"section":"google","name":"DemoB","mobile":"demob.htm","desktop":"http://www.google.com"}
 ]};
}

...別の関数にある.eachメソッドと通信する...

 $.loopjson = function() {
 $.each(mfjson().mjson.LinkToDesktopSite, function(key,value) {
   var external = "www.";   
   if((value['mobile'] == url)) { 
    if((value['desktop'].indexOf(external) == -1)) {
     $('.readmore').attr("href","https://www.mysite.org"+value['desktop']);
     }else{
       $('.readmore').attr("href",value['desktop']);
     }
   }
 });
}

.loopjson には mfjson が何であるか見当がつかないという firebug コンソール エラーが発生します。

アドバイスをありがとう!

4

1 に答える 1

0

私はそれを理解したと思います。「return mjson を最初の関数に追加し、$.mfjson().LinkToDesktopSite を追加の関数に追加しました...

$.mfjson = function() {
var mjson = { LinkToDesktopSite : [    
{"section":"aboutus","name":"DemoA","mobile":"demoa.htm","desktop":"/desktop/demoa.aspx"},
{"section":"google","name":"DemoB","mobile":"demob.htm","desktop":"http://www.google.com"}
]};
return mjson;
}

$.loopjson = function() {
 $.each($.mfjson().LinkToDesktopSite, function(key,value) {
 var external = "www.";   
 if((value['mobile'] == url)) { 
 if((value['desktop'].indexOf(external) == -1)) {
 $('.readmore').attr("href","https://www.mysite.org"+value['desktop']);
 }else{
   $('.readmore').attr("href",value['desktop']);
  }
 }
});
}
于 2012-07-25T13:27:47.827 に答える