-1

これは私のHTMLページです

ajax でいくつかの値を送信したいのですが、ajax 応答で値を取得したいのですが、 で呼び出した div に文字が表示されませんid=result。問題はどこだ?

   <html>
    <head>

     <!-- JQuery v1.8.2 -->
    <script src="theme/scripts/jquery-1.8.2.min.js"></script>

</head>
<body>

<div class="row-fluid">
    <div class="span4">

        <input type="text" id="title"/><br>
        <textarea rows="10" cols="50" id="content"></textarea><br>
        <input type="submit" id="gonderBtn" name="gonderBtn" />

        <div id="result"></div>

    </div>
</div>


    <script type="text/javascript">     
    jQuery(document).ready(function(){
        $("#gonderBtn").click(function(){
            var title   = $("title").val();
            var content = $("content").val();


         $.ajax({
             url: "deneme_action.php", 
             dataType: "html",
             type: 'POST',
             data: {
                 title: title,
                 content: content
             },
             success: function(data){ 
               $("result").html(data); 

             }
          });
        });
    });
    </script>


</body>

</html>

deneme_action.php

    <?php

if(isset($_POST["gonderBtn"])){

    $result = "Sonuc:".$_POST["title"];
     echo  "Selam:".$result;
}

else{
    echo "no post";
}


?>
4

5 に答える 5

2

のタグはありませんが、のタグがあるためclass="result"ですid="result"
jQuery セレクターを次のように変更します。

$("#result").html(data); 

または div タグを次のようにします。

<div class="result"></div>

そしてセレクターへ:

$(".result").html(data); 

そして、あなたはPOSTで送信gonderBtnしていません-それも修正してください:

$("#gonderBtn").click(function(){
        var title   = $("#title").val();
        var content = $("#content").val();
        var gonderBtn = $(this).val();


     $.ajax({
         url: "deneme_action.php", 
         dataType: "html",
         type: 'POST',
         data: {
             title: title,
             content: content,
             gonderBtn: gonderBtn,
         },

入力とテキストエリアのセレクターも修正しました。

于 2013-07-24T14:17:33.463 に答える
1

この行を確認してください:

echo  "Selam:"+$result;

ここでプラス演算子はエラーであるため、php スクリプトは何も返しません。

PHP での + 演算子の使用について説明しているこのリンクを確認してください。

于 2013-07-24T14:25:19.080 に答える
1

#resultdiv を適切に選択していません。#前に a を追加してください

$("#result").html(data); 

同じことがすべてのセレクターに当てはまります

var title   = $("#title").val();
var content = $("#content").val();

フォームを ajax するので、手動でボタン パラメータを渡す必要がありますが、ajax パラメータの方が適切です。

data: {
   title: title,
   content: content,
   gonderBtn: 'gonderBtn'
},
于 2013-07-24T14:16:18.790 に答える
1
var title   = $("title").val();
var content = $("content").val();

する必要があります

var title   = $("#title").val();
var content = $("#content").val();

また、以下を変更する必要があります。

$("result").html(data); 

$("#result").html(data); 

また、入力をフォームにラップする必要があります。

編集:ボタン入力に値を与えたい場合があります。

<input type="submit" id="gonderBtn" name="gonderBtn" value="go!" />

編集 2: また、html 要素に名前を付ける必要があります。

<input type="text" id="title" name="title"/><br>
<textarea rows="10" cols="50" id="content" name="content"></textarea><br>
于 2013-07-24T14:16:29.383 に答える
0
 echo  "Selam:"+$result;

PHP では "." を使用します。文字列を連結します。

 echo  "Selam:".$result;
于 2013-07-24T14:26:55.477 に答える