0

ajax呼び出しを介してjqueryモバイルのテンプレートにデータを追加する必要があり、次のライブラリとリストビュー関数を使用して既存のリストビュー(「リフレッシュ」)関数を参照していますが、jsエラーが表示されます。つまり、関数が存在する間、リストビューは関数ではありません以下のライブラリ:

<script src="https://d10ajoocuyu32n.cloudfront.net/jquery-1.9.1.min.js"></script>
<script src="https://d10ajoocuyu32n.cloudfront.net/mobile/1.3.1/jquery.mobile-1.3.1.min.js"></script>
<script src="https://d10ajoocuyu32n.cloudfront.net/codiqa.ext.js"></script>

ここに私が使用したものがあります

jQuery(document).ready(function () {
 jQuery('.pagination_ajax_request').click(function () {
     jQuery.ajax({
         type: 'POST',
         url: this.href,
         dataType: 'html',
         data: 'pagination_ajax_request=1',
         success: function (response) {

             // check if <div id="pagination"><div> exist, means ajax resopnse from post listing page other wise ajax resopnse from topic listing page
             if (jQuery("#pagination").length) {
                 jQuery("#pagination").append(response);
             } else {
                 jQuery("#topic_list").append(response);
                 jQuery("#topic_list").listview("refresh");
             }
             if (ajax_pagination_data['current_page'] != ajax_pagination_data['total_pages'] && ajax_pagination_data['current_page'] != '0') {
                 //update "Load More Topics" OR "Load More Posts" link href value
                 var href = jQuery(".pagination_ajax_request").attr('href');
                 jQuery(".pagination_ajax_request").attr('href', href.replace(/&?trail=\d+/, '&trail=' + ajax_pagination_data['trail']));
             } else {
                 //hide "Load More Topics" OR "Load More Posts" if No topic OR post
                 jQuery(".pagination_ajax_request").hide();
             }
         },
         error: function (xhr, textStatus, errorThrown) {
             alert('An error occurred while processing your request.\n' + textStatus + ': ' + errorThrown);
         }
     });
     return false;
  });
});
4

2 に答える 2

1

ここでは、サーバーから取得するデータが重要です。リストビューに動的コンテンツを追加する場合は、ここに例があります

li を追加しているときに、いくつかの要素または何かが欠落していると思います

 $('<li>').append('<a href="#">Mercedes</a>').appendTo('#test-listview');

またはあなたが試すことができます

var UI = $('#listViewID');
for(x in data){
   UI.append(data);
}
$('#listViewID').listview("refresh");
于 2013-08-01T15:08:13.430 に答える
0

私は同じ問題を抱えていました。jquery v1.8.3に戻し、問題を修正しました。

ここで 1.8.3 と 1.3.1 の組み合わせを試すことができます: http://jsfiddle.net/dPwzE/

<link rel="stylesheet" href="http://code.jquery.com/mobile/1.3.1/jquery.mobile-1.3.1.min.css"/>
<script type="text/javascript" src="http://code.jquery.com/jquery-1.8.3.min.js"></script
<script type="text/javascript" src="http://code.jquery.com/mobile/1.3.1/jquery.mobile-1.3.1.min.js"></script>
于 2013-08-05T02:00:40.407 に答える