.ajax()を使用する場合、jQuery はフォーム変数または http POST アクションを渡していないようです。
var_dump ( $_POST ); の実行 空の配列になります。
提案?私は何を間違えたのでしょうか....それは単純な概念です-誰かが同様のQを投稿しましたが、誰も応答しませんでした.彼の解決策はフォームにIDを追加することでした.
現在、私はfirebugでリターンページのコンテンツを表示しています.サーバーにデータを取得できないため、まだ何もしていません...(最初に最初に).
私のHTML
<script type="text/javascript">
$( document ).ready( function(){
$( "#myform" ).submit( function () {
$.ajax({
type: "POST",
dataType: "html",
cache: false,
url: "x.php",
success: function( data ){
//...tell user there was success...
},
error: function( data ){
//...tell user thre was a problem...
}
});
return false;
});
});
</script>
<form name="myform" id="myform" action="" method="POST">
<label for="name" id="name_label">x: </label>
<input type="text" name="x" id="x" size="30" value=""/>
<input type="submit" name="submit" value="Submit">
</form>
<div id="results"><div>
そして、これが(x.php)PHPコードです-非常に単純な概念実証...
<?php
var_dump( $_GET );
var_dump( $_POST );
var_dump( $_REQUEST );
?>
応答は次のようになります
array(0) {}
array(0) {}
array(1) {
["PHPSESSID"]=>
string(26) "e1j18j..."
}