0

phonegapを使用してモバイルアプリを開発しようとしていますが、問題があります。

    function onBodyLoad(){


$('#contentdining').load('http://localhost/m/contentdining.php',
{reloadPage:true});

var id = getUrlVars()["id"];
var product = serviceURL+'contentproduct.php?id='+id;
$('#contentproduct').load(product,{reloadPage:true});

});

index.htmlで、私の問題は「更新できない」です

4

2 に答える 2

1

このreloadPageオプションは関数に対して無効です。.load()関数に対するもの$.mobile.changePage()です:

$.mobile.changePage('some-url.html', {
    reloadPage : true
});

ドキュメント: http://jquerymobile.com/demos/1.1.0/docs/api/methods.html

これは外部ページでのみ機能することに注意してください。したがって、アプリのすべての疑似ページが 1 つの HTML ファイルに含まれている場合、この機能は使用できません。ただし、単一の HTML ドキュメントから疑似ページを引き出して、独自のページを作成するだけで可能です。

それ以外の場合は.load()、ページをリロードするために使用できますが、サーバーから返された HTML が有効な jQuery Mobile ページ構造を作成することを確認してください。

<div data-role="page">
    <div data-role="content">
        ...
    </div>
</div>

のドキュメントは次の.load()とおりです。 http://api.jquery.com/load/

使用している方法はデータ オブジェクトを渡しているため、ロードしている URL はset to.load()という名前の GET 変数を受け取ることに注意してください。したがって、ページを で動作させるには、単純に.reloadPagetrue.load(){ reloadPage : true }

$.ajax()キャッシュに問題がある可能性があります。その場合は、キャッシュされたコンテンツを許可しないように指定できるように使用することをお勧めします。

$.ajax({
    url     : serviceURL + 'contentproduct.php?id=' + getUrlVars()["id"],
    type    : 'get',
    cache   : false,
    success : function (response) {
        $('#contentproduct').html(response);
    },
    error   : function (a, b, c) { console.log(b); }
});

設定cache : falseにより、AJAX 要求の URL の最後にタイムスタンプが配置されるため、毎回新しいバージョンが取得されます。

于 2012-06-19T19:51:07.787 に答える
0

完了...すべてに感謝+ @jasperも..私は他の解決策を手に入れました...前回はURLのパラメーターを取得するために更新を使用しました( GET を使用)..しかし、1日はまだそれらを見つけることができません

今のところ、他のソリューション( POST )メソッドを使用しています

これは私のコード

PHPで

<a href="#product?id=<?php echo $row_getd['id_product']; ?>" style="text-decoration:none;color:#333;" onclick="onBodyLoad1(<?php echo $row_getd['id_product'];?>);">

.jsで

  var serviceURL = "http://localhost/m/";
    //var serviceURL = "http://kimpuler.com";

function onBodyLoad1(idku){

    var id = getUrlVars()["id"];
    var product = serviceURL+'contentproduct.php?id='+id;
    $("#contentproduct").load(product,{'id':idku}, function(){
    location.reload;
    });

私のような同じ問題が発生したときに、他の人に役立つことを願っています..

ありがとう@jasperも..あなたは本当に素晴らしい人です...あなたのコードは私にインスピレーションを与え、将来使用します...

よろしくJK

于 2012-06-20T13:54:43.967 に答える