jQuery
でajaxリクエストを実装しました。これはコードです:jQuery ajaxはChromeで動作しますが、FirefoxやSafariでは動作しません
//initialize value, nameValue, emailValue
$.ajax({
url: "getPOST.php",
type: 'POST',
data: {
'id': value,
'name': nameValue,
'email': emailValue
},
success: function(response) {
console.log(response);
}
});
コードはクロームで問題なく動作しますが、SafariとFirefoxでは正常に動作しません。私はこの質問にいくつかの答えを見ましたが、彼らは6歳以上です。この問題の修正方法は何ですか?
EDIT:私はPHP側では、FirefoxやSafariで実行するとデータベースに何も格納されませんが、Chromeでは期待通りに動作します。コンソールにエラーメッセージはありません。 Safariでのリクエストは赤色で表示され、データは送信されませんでした。
私はFirefoxでポストデータを検査し、それらがあるべきな彼らがしています。エラーはありません。リクエストは赤で塗られていますが。これは見た目です。 jQuery側のエラー?
私はPayPal支払いページにユーザーを向ける前に、私のサーバーにデータを送信するために、このコードを使用しています。
jQueryコード。私は多くの中括弧に削除しないことを願っています。コメントを
長いへ// JavaScript Document
jQuery(document).ready(function($){
//you can now use $ as your jQuery object.
//real stuff here
$(".submit-link").click(function(e){
var value=$.trim($(".url-submit").val());
if(value.length>0){
value = encodeURIComponent(value);
var nameValue=$.trim($(".name-submit").val());
var emailValue=$.trim($(".email-submit").val());
if(nameValue.length>0){nameValue = encodeURIComponent(nameValue);}
if(emailValue.length>0){emailValue = encodeURIComponent(emailValue);}
$.ajax({
url: "getPOST.php",
type: 'POST',
data: {"id":value,"name":nameValue, "email":emailValue},
success: function(response) {
console.log(response);
}
//go to link in href now
});
}else{
var $urlSubmit = $('.url-submit');
$urlSubmit.addClass('invalid');
setTimeout(function(){
$urlSubmit.removeClass('invalid');
},500);
e.preventDefault();
}
});
//some other stuff
});
それが失敗すると、何が起こりますか?表示されたスニペットで、ブラウザ間で不一致が発生することは何もありません –
編集を追加しました.. – sanjihan
ブラウザに開発ツールを開き、ブラウザにエラーが発生してコンソールにエラーメッセージがないかどうかを確認します。何かが見える場合は、問題を診断するのに役立ちますので、共有してください。編集:ちょうどそれがPHP側で失敗したと言った見た。ポストヴァールのようなものをエコー/ログアウトできますか?ネットワークタブを調べて、どの値がサーバーに送信されたかを確認することもできます。 – Dymos