2016-06-24 3 views
0

jquery 함수 안에 value="" 속성에 아래의 PHP 코드를 추가하려고합니다. 그러나 html 코드를 실행하면 PHP 코드 자체가 표시됩니다.이 문제를 어떻게 해결할 수 있을지 궁금합니다. PHP 코드 자체가 표시되지 않습니까?JQuery 함수 문제 내부의 PHP

jQuery를 당신은 .js 파일에 PHP 코드를 사용하기 위해 노력하고 있지만이 작동하지 않습니다

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

이 파일이'.php' 접미사가 있습니까? 서버를 통해 액세스하고 있습니까? PHP는 로컬 파일에만 액세스 할 때 실행되며 서버는 액세스하지 않습니다. – Barmar

+0

jquery는 .php 파일에서 호출됩니다. – smoke

+0

그리고 서버를 사용하여 .php 파일에 액세스하고 있습니까? – Barmar

답변

0

$(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는 일반적으로 .php 개의 파일로만 실행되며 웹 서버가 .js 파일로 PHP를 실행하도록 구성하더라도 원래 스크립트의 $_POST 변수에 대한 응답은 없습니다.

원래 .php 파일의 자바 스크립트 변수를 설정 한 다음 .js 파일에서 해당 변수를 사용할 수 있습니다.

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

그런 다음 filename.js 당신은 first_name 변수를 사용할 수 있습니다 :

$(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