jqMobi使用ajax数据动态更新元素

时间:2013-04-25 12:42:08

标签: javascript mobile jqmobi

使用jqmobi 1.2
我正在尝试使用ajax调用的结果更新面板的内容。 以下面板将收集要搜索的字符串。

<div id="register_form" class="panel" data-defer="" data-header="default" data-footer="register_footer" data-load="" data-unload="">
<form id="register_data" class="selected">
   <fieldset class="scrollable" data-pull-scroller="true">
      <legend class="toggelable" >Organization:</legend>
         <div id=""class="toggelable">
            <label for="seleced_org"  >Bezeichnung:</label><br>  
               <input type="text" id="seleced_org" class="toggelable jq-ui-forms" ><br>
                  <a class="button icon magnifier" href="javascript:searchOrg();">Search</a>
          </div>
       </fieldset>
</form>
</div>

该按钮将调用以下函数,其中success方法将使用id“org_options”向面板添加元素。

Ajax功能:

var FOUNDORGS = [];

function searchOrg() {
   var request = $('input[id=seleced_org]').val();
   $.ajax({
       url: mcTime.ASURL + "/OrgCheck",
       dataType: "JSONP",
       crossDomain: true,
       data: {
           maxRows: 12,
           name_startsWith: request,
           callback: ''
       },
       success: function(data) {
          /*
           * server response: [{"organisationId":1,"workerquantity":0,"name":"My_Org","street":"Org_Street 1","zipcode":"45454","city":"Org_City"}]
           */
           FOUNDORGS = $.parseJSON(data);    

           if ($('fieldset[name="options"]').find('.matchingOrgs').length == 0) {
               $('fieldset[name="options"]').append('<ul class="mc matchingOrgs"></ul>');
           }
           var toAppend = $('fieldset[name="options"]').find('.matchingOrgs')[0];
           $(toAppend).html('');
           for (var i = 0; i < FOUNDORGS.length; i++) {
               var obj = FOUNDORGS[i];
               var li = $('<li>\n\
                    <a class="orglink" href="javascript:showOrgDetail(\'' + obj.organisationId + '\',\'' + obj.name + '\');">' + obj.name + '</a>\n\
                    </li>');
               $(toAppend).append(li);
           }

           $.ui.loadContent('#org_options', false, false, 'slide');
       }
   });
 }

附加div:

<div id="org_options" class="panel" data-header="default" data-footer="register_footer" modal="false" data-unload="">
   <fieldset name="options" class="mc scrollable" data-pull-scroller="true">
      <legend >Results:</legend>
   </fieldset>
 </div>

所有这些都适用于我的浏览器(chrome)和XDK模拟器,但在使用XDK app-tester时不能在我的iPhone上使用。

任何团体都有任何想法??

1 个答案:

答案 0 :(得分:0)

我是App Framework的主要开发人员。 iOS容器中存在一个错误,它处理来自远程服务器的JSON数据。在http://forums.html5m.com处有一些关于它的帖子。它在我们的错误跟踪系统内部记录。

感谢, 伊恩