2016-06-24 8 views
0

jquery関数内のvalue=""属性に以下のPHPコードを追加しようとしていますが、htmlコードを実行するとPHPコード自体が表示されます。 PHPコード自体は表示されませんか?PHPがJQuery関数の問題内にある

のjQuery

$(document).ready(function(){ 
    var max_fields = 2; 
    var x = 1; 

    $('.add').click(function(e){ 
     //e.preventDefault(); 
     e.preventDefault(); 
     //stop the click from bubbling 
     e.stopPropagation();  

     if(x < max_fields){ 
      x++;  
      $(this).closest('li').append('<div class="container"><input type="text" name="first_name[]" value="" /></label></div>');  
     } 

}); 

PHP

<php if(!empty($_POST['first_name'])){ echo $first_name; } ?> 
+0

<script> var first_name = <?php echo json_encode($_POST['first_name']); ?>; </script> <script src="filename.js"></script> 

はその後filename.jsに、あなたはfirst_name変数を使用できますか?サーバー経由でアクセスしていますか?ローカルファイルにアクセスしたときにPHPは実行されず、サーバーのみが実行されます。 – Barmar

+0

jqueryは.phpファイルから呼び出されます – smoke

+0

そしてサーバーを使用して.phpファイルにアクセスしていますか? – Barmar

答えて

0

あなたは.jsファイルにPHPコードを使用しようとしているが、それは動作しません。 PHPは通常.phpファイルでのみ実行され、.jsファイルでPHPを実行するようにWebサーバーを設定しても、元のスクリプトの$_POST変数には影響しません。

あなたができることは、オリジナルの.phpファイルからJavascript変数を設定し、それを.jsファイルで使用することです。ファイルは `.php`接尾辞を持っています

$(document).ready(function(){ 
    var max_fields = 2; 
    var x = 1; 

    $('.add').click(function(e){ 
     //e.preventDefault(); 
     e.preventDefault(); 
     //stop the click from bubbling 
     e.stopPropagation();  

     if(x < max_fields){ 
      x++;  
      $(this).closest('li').append('<div class="container"><input type="text" name="first_name[]" value="' + first_name + '" /></label></div>');  
     } 

}); 
+0

ありがとう、私はそれを試してみましょう。それ以上の問題がある場合は、すべての助けを借りてもう一度別の質問をします。 – smoke