2012-10-23 3 views
0

내가 가지고있는 것처럼 설정 행으로 구성 형태 :POST 요청은 모든 변수를 전송하지

function addTableRow(table){ 
    for(i=0; i<myForm.elements['entriesNum'].value; i++){ 
     var $tr = $(table).find(".row:last").clone(); 
     $tr.find("input,select,textarea").attr("name", function(){ 
      var parts = this.id.match(/(\D+)(\d+)$/); 
      return parts[1] + ++parts[2]; 
     }).attr("id", function(){ 
      var parts = this.id.match(/(\D+)(\d+)$/); 
      return parts[1] + ++parts[2]; 
     }); 
     $(table).find(".row:last").after($tr); 

     $tr.find('.fileElements').remove(); 
     $tr.find('input[type!="radio"], textarea').removeAttr("value"); 
     $tr.find('input').removeAttr("checked"); 
     $tr.find('select option:first-child').attr("selected", true); 
     $tr.find('input[type!="radio"]').removeAttr("disabled"); 
     $tr.find('input[type="radio"]').attr("disabled", "disabled"); 
     $tr.find('.error').hide(); 
    } 
} 

이 이러한 행은 이름을 증가 자바 스크립트 함수를 사용하여 반복 얻을

<div class="row unit" onmouseover="this.style.background = '#eeeeee';" onmouseout="this.style.background = 'white';" onclick="if(event.srcElement.nodeName != 'INPUT' && event.srcElement.nodeName != 'SELECT' && event.srcElement.nodeName != 'TEXTAREA'){goToByScroll(event.srcElement,-160);}"> 
      <div class="col"> 
       <div class="select"> 
        <input type="checkbox" id="select<?php echo $i; ?>" name="select<?php echo $i; ?>"> 
       </div> 

      </div> 
      <div class="col name"> 
       <p><input class="searchable" type="text" id="name<?php echo $i; ?>" name="name<?php echo $i; ?>" value="<?php echo $name; ?>"></p> 
       <p>Badge ID: <input class="searchable" type="text" id="badge<?php echo $i; ?>" name="badge<?php echo $i; ?>" value="<?php echo $badge; ?>" style="width: 50px;"></p> 
      </div> 
      <div class="col phone"> 
       <p>Work: <input class="searchable" type="text" id="phone<?php echo $i; ?>" name="phone<?php echo $i; ?>" value="<?php echo $phone; ?>"></p> 
       <p>Cell: <input class="searchable" type="text" id="cell<?php echo $i; ?>" name="cell<?php echo $i; ?>" value="<?php echo $cell; ?>"></p> 
       <p>Home: <input class="searchable" type="text" id="home<?php echo $i; ?>" name="home<?php echo $i; ?>" value="<?php echo $home; ?>"></p> 
      </div> 
      <div class="col email"> 
       <p>Work: <input class="searchable" type="text" id="email<?php echo $i; ?>" name="email<?php echo $i; ?>" value="<?php echo $email; ?>"></p> 
       <p>Personal: <input class="searchable" type="text" id="perEmail<?php echo $i; ?>" name="perEmail<?php echo $i; ?>" value="<?php echo $perEmail; ?>"></p> 
      </div> 
      <div class="col file"> 
       <p class="removeFile"><input type="text" id="filename<?php echo $i; ?>" name="filename<?php echo $i; ?>" class="file" value="<?php echo $filename; ?>" readonly> 
       Remove: <input type="checkbox" id="removeFile<?php echo $i; ?>" name="removeFile<?php echo $i; ?>"></p> 
       <input type="file" id="file<?php echo $i; ?>" name="file<?php echo $i; ?>" onchange="myForm.elements['filename<?php echo $i; ?>'].value=myForm.elements['file<?php echo $i; ?>'].value;"> 
      </div> 
</div> 

행 수가 111 이상이 될 때까지 완벽하게 작동합니다.이 시점에서 내가 추가 한 행이 더 이상 아무런 데이터도 배열에 포함되지 않습니다. print_r ($ _REQUEST);을 사용하여이 문제를 추론 할 수있었습니다. php.ini 파일을 편집하고 모든 maxes를 변경하지 않고 터무니없이 높게 설정했습니다.

+0

php.ini를 편집 한 후 아파치를 다시 시작 했습니까? –

+0

jQuery 버전이 1.6보다 새로운 경우'.attr()'대신'.prop()'를 사용해야한다고 생각합니다. 그것이 당신의 문제인지 아닌지 말할 수 없습니다. – Pointy

+0

suhosin 또는 hardened-php와 같은 강화 된 PHP 버전을 사용하고 있습니까? – Lee

답변

0

POST에서 나타나지 않는 양식 요소를 작성한 자바 스크립트에 문제가있을 때마다 항상 양식 태그를 구성한 방식과 관련이 있습니다.

찾을 내용 ...

서식 태그가 제대로 닫혀 있습니까?

DOM의 동일한 수준에서 FORM을 시작하고 닫을 수 있습니까? 예를 들어,

<form method='post'> 
    <div> 
    <!--lots of stuff--> 
    </div> 
</form> 

당신이 일하기 전에 열어하지 닫혀 다른 FORM 태그가 있습니까 ...
<form method='post'> 
<div> 
    <!--lots of stuff--> 
    </form> 
</div> 

대신이 원하는 것 ...이 작업을 수행 할 수없는 것 너는 실제로 같이 일하고있는거야? 이렇게 ...

<form method='get'> 
    <!--some kind of form about something else--> 

<form method='post'> 
    <!--the data you're currently focused on--> 
</form> 
+0

나는 특정 수의 행에 도달 한 후에 만 ​​데이터가 나타나지 않는다는 귀하의 의견을 기다리고 있습니다. 그래서 이것은 적용되지 않을 것입니다. Dang it! 매번이 사이트를 다시 시도해 볼 때마다 나는 그것을 너무 많이 날려 버렸다. :-) – rgbflawed

관련 문제