、php mysql_queryにjQuery.ajax()関数のデータオプションを書き込む方法は?
PHPの部品コード
<?php
...
while($result = mysql_fetch_array($resultset))
{
$article_title = $result['article_title'];
...
?>
<form id="postform" class="postform">
<input type="hidden" name="title" id="title" value="<?=$article_title;?>" />
<input type="text" name="content" id="content" />
<input type="button" value="Submit" class="Submit" />
</form>
...
<?php
}
?>
Ajaxの一部:
$(function($) {
$(document).ready(function(){
$(".Submit").click(function(){
var id = $(this).attr("id");
var name = $(this).attr("name");
var dataString = 'id='+ id ;
var parent = $(this);
var anyBlank = 0;
if(anyBlank == "0")
{
var title = $("#title").val();
var content = $("#content").val();
$.ajax({
type: "POST",
url: "ajax_post.php",
data: "title="+title+"&content="+content,
success: function(date_added){
if(date_added != 0)
{
structure = '<div class="comment_date_added">'+date_added+'</div><div id="comment_text"><div id="comment_content">'+content+'</div>';
$("#post_comment").prepend(structure);
}
});
});
ajax_post.php
echo $title;
echo $content;//get $title and $content and insert into database.
私の質問: <form id="postform" class="postform">
は、MYSQL_QUERYの結果circlに書き込まれます。 e。どのようにすべてのdiv.submit
ajax_post.php
に独自の値を投稿し、$("#post_comment").prepend(structure);
にデータを返すことができるようにajaxの部分を変更するすべてのおかげで。
私は昼食に戻っています。私はあなたの指示に従い、 'id'を' class'に変更し、不要なコードを削除します。しかし '$(this).siblings'を' var title = $(this).siblings( '。title')という行に追加するとval(); var content = $(this).siblings( '。content')。val(); '、データは空になります。 '$(this).siblings'を削除しても、最初の' .Submit'データをデータベースに投稿できます。まだ助けが必要です。 – cj333
@ cj333:投稿したフォームの構造は正確ですか? '$(this).siblings( '。title')'は、submitボタンと同じレベルにある 'title'クラスの要素を見つけるでしょう。代わりに '$(this).closest( 'form')を試すこともできます。find( '。title').val()' –
はいフォームの構造は私の投稿とまったく同じです。私は '$(this).closest( 'form')。find( '。title')。val()'を試してみると、各フォームにデータを送ることができます。しかし、ディスプレイにはまだ問題があります。あなたのメソッドの2つを試してみましたが、 'var'やjqueryのようなものを追加しましたが、どこにでもコメントを投稿すると、mysqlクエリに10個の結果がある場合、'
'記事。 (私はすべてのIDをクラスに変更しました) – cj333