2014-01-20 6 views
0

받은 날짜라는 열이있는 표가 있습니다. 이 열은 사용자가 클릭 할 때 jquery에서 datepicker 스크립트를 활성화하고 원하는 날짜를 선택할 것으로 예상되는 동적 입력 필드입니다. 내가 가지고 할동적 입력에서 datepicker 사용

는 동적 ID 생성이 다음과 같은 PHP 코드 : 그런 다음

$sql="SELECT id, firstname, lastname FROM customers ORDER BY firstname"; 
$sql=$mysqli->query($sql); 
while($row=mysqli_fetch_array($sql)){ 

    $id = $row['id']; 
    $firstname = $row['firstname']; 
    $lastname = $row['lastname']; 

    $output .='<tr id='.$id.'>'; 
    $output .='<td>'.$firstname.'</td>'; 
    $output .='<td>'.$lastname.'</td>'; 
    $output .='<td><input type="text" name="received" id="received" value=""/></td>'; 
    $output .='</tr>'; 

} 

echo $output; 

내가 "받은"에 대한 날짜 선택기를 호출 내 JQuery와 스크립트가 객체 :

<script> 
    $(function() { 
     $("#received").datepicker(); 
    }); 
</script> 

그것은 좋은 일 그러나 그리드의 첫 번째 행에 입력하기 만하면됩니다. 다른 이들은 datepicker 스크립트를 표시하지 않습니다.

아무 해결책이 있습니까? 미리 감사드립니다.

+0

ID **는 고유해야합니다. 대신 클래스를 사용해보십시오. – j08691

답변

1

html로 중복 된 ID가 있습니다. (datepicker은 ID가 received 인 첫 번째 입력에만 적용)

id="received"에서 class="received"으로 변경 한 다음 클래스 선택기를 사용하면 문제가 해결됩니다.

$(function() { 
    $(".received").datepicker(); 
}); 
+0

완벽! @xdazz 감사합니다. –

0

이들은 모두 동일한 ID입니다. 변경하려면 다음으로 변경하십시오.

$output .='<td><input type="text" name="received" class="received" value=""/></td>'; 

<script> 
    $(function() { 
     $(".received").datepicker(); 
    }); 
</script> 
+0

대단히 감사합니다 .NewInTheBusiness. 그것은 아주 잘 작동하고 모든 행에 팝업. –

관련 문제