2012-05-27 7 views
0

를 사용하여 PHP와 JQuery와 사용하여 PHP 파일이 배열을 게시하고자합니다 :포스트 배열은 내가 텍스트 상자</p> <pre><code><input type="text" name="txt[]" id"txt[]" value="test 1" /> <input type="text" name="txt[]" id"txt[]" value="test 2" /> <input type="text" name="txt[]" id"txt[]" value="test 3" /> </code></pre> <p>의 배열을 JQuery와

$('#submit').click(function() { 

     $.ajax({ 
      type : 'POST', 
      url : '<?php echo site_url('projects/create'); ?>', 
      data: { 
       txt: $('#txt').val() 
      }, 
      success:function (data) { 
       $("#log_msg").html(data); 
      }   
     }); 
    }); 

하지만 undefined

+0

물품. 그리고 텍스트 상자의 id는 "txt []"입니다. –

답변

1

그냥 당신이 ID입니다 선택기 #을 사용하는

<input type="text" name="pro_video[]" id="pro_video" /> 

$('#submit').click(function() { 

var videos = $('input[name^=pro_video]'); 
     var postData = { 
      vdo: [], // the videos is an array 
     }; 
     $.each(videos, function(index, el) { 
      // push the value in the vdo array 
      postData.vdo.push($(el).val()); 
     }); 

     $.ajax({ 
      type : 'POST', 
      url : '<?php echo site_url('projects/create'); ?>', 
      data: { 
       pro_video : postData 
      }, 
      success:function (data) { 
       $("#log_msg").html(data); 
      }   
     }); 
    }); 
0
을 반환

jQuery serialzie()를 사용하여 HTML 양식에서 양식 값을 가져올 수 있습니다. 예

:

<form id="testForm" method="post"> 
    <input type="text" name="txt[]" id"txt[]" value="test 1" /> 
    <input type="text" name="txt[]" id"txt[]" value="test 2" /> 
    <input type="text" name="txt[]" id"txt[]" value="test 3" /> 
</form 

및 jQuery를 사용 형태로부터 값을 취득한다.

$('#testForm').serialize(); 
0

jQuery $ (form) .serialize() 함수가 도움이 될 것입니다!

$('#submit').click(function() { 

     $.ajax({ 
      type : 'POST', 
      url : '<?php echo site_url('projects/create'); ?>', 
      data: $('#testForm').serialize(), 
      success:function (data) { 
       $("#log_msg").html(data); 
      }, 
      error: function(x,t,e){ 
       $("#log_msg").html('An error occured: '+e); 
      } 
     }); 
    }); 

당신은 (('프로젝트 생성 /') 포인트를 어디에 SITE_URL)를 파일에 $ _POST 친절하고 깨끗한 배열을 얻을 것이다. 경고 생각, 그 양식에 입력 제출을 추가하면 serialize() 또한 게시 값을 게시하므로 배열을 데이터베이스에 직접 삽입하려는 경우 POST 배열에서 제거해야합니다. 어쨌든. ;)

재미있게 보내세요! 추 신 : id "txt []"은 (는) 올바른 마크 업이 아닙니다 ...! id = "txt_1". 당신은 오직 하나의 참조 ID를 문서에 가질 수 있습니다. 그리고 나는 여러분이 마크 업에 괄호를 사용할 수 있다고 생각하지 않습니다. (만약 누군가 틀렸다면 ..)

0

자바 스크립트에서 PHP로 배열을 전달하기 위해 JQuery에서 serialize function을 사용할 수 있습니다. 전체 양식 또는 일부 선택된 양식 요소에 대해이를 전달할 수 있습니다. 예를 들어 당신이 같을 것이다 주었다

html로 :

<input type="text" name="txt[]" class="txt" value="test 1" /> 
<input type="text" name="txt[]" class="txt" value="test 2" /> 
<input type="text" name="txt[]" class="txt" value="test 3" /> 

그리고 자바 스크립트 :

$('#submit').click(function() { 

    $.ajax({ 
     type : 'POST', 
     url : '<?php echo site_url('projects/create'); ?>', 
     data: { 
      txt: $('.txt').serialize() 
     }, 
     success:function (data) { 
      $("#log_msg").html(data); 
     }   
    }); 
}); 

이 % 5B %의 5D TXT 당신의 PHP는 문자열을 "줄 것이다 = test + 1 & txt % 5B % 5D = test + 2 & txt % 5B % 5D = test + 3 "이며,이 값의 배열로 해석 할 수 있습니다.

id는 각 요소에 대해 고유해야하기 때문에 id 대신 class를 사용했음을 유의하십시오.

관련 문제