2

ajax json を使用してデータベースからデータがバインドされるhtmlドロップダウンがあります。値はIDに従って表示され、選択したIDに従ってドロップダウンでバインドされます。しかし問題は、jquery モバイル css を適用した後、値がドロップダウンに表示されないことです。css を含めない場合、値がドロップダウンに表示されます。jquery モバイル コントロールに含める必要がある関数。

私のコード:

<link href="../CSS/themes/default/jquery.mobile-1.1.1.min.css" rel="stylesheet" type="text/css" />
<link rel="stylesheet" type="text/css" href="../CSS/themes/default/my.css" />



<div data-role="fieldcontain" style="width: 50%">
    <label for="selectmenu22">
        <span style="font-family: times new roman,times; font-size: medium;">
        <b>Address Details:</b>
        </span>
    </label>
    <select  name="selectmenu22" id="ddlAddressDetails" required="required"  data-theme="b" data-mini="true" runat="server">
    </select>
</div>
var table=document.getElementById("ddlAddressDetails"); 
var selectData="";
var data = $.ajax({

          url: 'ViewSurvey.aspx',                                                            
          data: {ID:function(){return EID}},
          dataType: 'json', 
          async: false, 
          success: function(data, result) 
                    {                                                             
                     if (!result)
                     {
                      alert('Failure to retrieve the data.'); 
                     }
                     else
                     {
                     for(var i=0;i<data.length;i++)
                     {     

                        selectData+="<option selected='selected' 
value='"+data[i].ID+"'>"+data[i].OriginDestinationAddress+"</option>"              
                     }  
                     table.innerHTML=selectData;  

                 }
}
});

return table;
}
4

1 に答える 1

0

準備はできているが表示されていない項目を更新するには、ドロップダウンを更新する必要があります。使用してみてください:

$('#ddlAddressDetails').selectmenu('refresh');

編集

このコードを使用して、項目をドロップダウンに追加してみてください:

$('#ddlAddressDetails').append($('<option></option>').val(data[i].ID).html(data[i].OriginDestinationAddress));
于 2012-12-28T12:34:38.767 に答える