2012-02-08 29 views
1

jQueryスライダを使用して値を選択する簡単なWebページを作成しています。スライダの 'stop'イベントは、応答を処理するために値を少しのPHPコードに送るGETリクエストをトリガする必要があります。ユーザーは、その後、別のページにリダイレクトされます:Javascript HTTP GETリクエストはFirefoxとiPad Safariで動作しますが、Mac OS Safariでは動作しません

stop: function(event, ui) { 
    var slideValue = $("#slider").slider("value"); 
    $.get('submit.php', { item : slideValue }); 
    window.location = "thanks.html"; 
} 

これは完璧に動作します - しかし、私は、FirefoxやSafariのiPad版を使用する場合にのみ。どちらもジョブを実行するHTTP要求を生成します。

問題はMac OS Safariにあります。 slideValueが正しく設定され、リダイレクトが発生しますが、なんらかの理由でGETリクエストが実行されず、PHPコードが呼び出されません。

Safariの作品から手動でsubmit.php?item=<number>を呼び出してください。

私はJavaScriptとjQueryの両方に新しいので、明らかに何かが分からないかどうかはわかりません。助けを前にありがとう。

答えて

2

ロケーションを変更する前に、取得リクエストの回答を待つ必要があります。

stop: function(event, ui) { 
    var slideValue = $("#slider").slider("value"); 
    $.get('submit.php', { item : slideValue }) 
    .success(function() { 
    window.location = "thanks.html"; 
    }) 
    .error(function() { 
    alert("error"); 
    }); 
} 
+0

パーフェクト:あなたはjQueryの1.5を使用する場合は

stop: function(event, ui) { var slideValue = $("#slider").slider("value"); $.get('submit.php', { item : slideValue },function() { window.location = "thanks.html"; }); } 

は、あなたは繰延オブジェクトを使用することができます。できます。あなたは学者であり、紳士です - ありがとう。 – James

+0

が承認されました。このサイトでは、ダニをクリックするまでに10分待っていました。再度、感謝します。 – James

関連する問題