작성하려고하는 페이지가 다른 labtest의 편집 페이지입니다. 각각의 labtest는 그 결과와 다른 정상 범위 (따라서 Min/Max)가 다른 결과를 가지므로 PHP의 SQL SELECT 문에서 값을 가져 와서 Smarty로 보냅니다. 나는 왜 X-editable로 갔는지 BootStrap을 사용하고 있습니다.X-editable : Smarty Loop Array
이러한 실험실 테스트 값을 편집하는 데 X-editable을 사용하려고하지만 foreach 문에서 문제가 발생합니다. 편집 기능은 첫 번째 행에는 작동하지만 다음 행에는 작동하지 않습니다. 그들이 동일한 id (I.E. id = "")를 가지고 있기 때문에 나의 이해가 있습니다. 이 주위에 어떤 방법이 있습니까? 나는 JS에 상당히 익숙해 져서 해결책을 찾는데 어려움을 겪고있다.
어둠 속에서 촬영하고 있지만 ID 이외에 PK를 사용하여 JS에 배열을 보내어 JS에서 링크를 편집 할 수 있도록 반복 할 수 있습니까? 논리적으로 바보 같아 보이지만 더 좋은 방법이 있기를 바랍니다.
다음은 내가 한 것입니다.
{literal}
<script>
$(document).ready(function() {
$('#TestName').editable();
$('#TestPrice').editable();
$('#valuename').editable();
$('#Units').editable();
$('#MaleMin').editable();
$('#MaleMax').editable();
$('#FemaleMin').editable();
$('#FemaleMax').editable();
$('#ChildMin').editable();
$('#ChildMax').editable();
});
</script>
{/literal}
<table class="table table-striped">
<thead>
<th>Test Type</th>
<th>Measurement Unit</th>
<th>Min. Male</th>
<th>Max. Male</th>
<th>Min. Female</th>
<th>Max. Female</th>
<th>Min. Child</th>
<th>Max. Child</th>
</thead>
{foreach from=$alltests item=alltests}
<tr>
<td><a href="#" id="valuename" data-type="text" data-pk="{$alltests.ID}" data-url="labtest-edit-post.php" data-title="Enter Test Type">{$alltests.valuename}</a></td>
<td><a href="#" id="Units" data-type="text" data-pk="{$alltests.ID}" data-url="labtest-edit-post.php" data-title="Enter Unit of Measurement">{$alltests.Units}</a></td>
<td><a href="#" id="MaleMin" data-type="text" data-pk="{$alltests.ID}" data-url="labtest-edit-post.php" data-title="Enter Minimum Male Range Value">{$alltests.MaleMin}</a></td>
<td><a href="#" id="MaleMax" data-type="text" data-pk="{$alltests.ID}" data-url="labtest-edit-post.php" data-title="Enter Maximum Male Range Value">{$alltests.MaleMax}</a></td>
<td><a href="#" id="FemaleMin" data-type="text" data-pk="{$alltests.ID}" data-url="labtest-edit-post.php" data-title="Enter Minimum Female Range Value">{$alltests.FemaleMin}</a></td>
<td><a href="#" id="FemaleMax" data-type="text" data-pk="{$alltests.ID}" data-url="labtest-edit-post.php" data-title="Enter Maximum Female Range Value">{$alltests.FemaleMax}</a></td>
<td><a href="#" id="ChildMin" data-type="text" data-pk="{$alltests.ID}" data-url="labtest-edit-post.php" data-title="Enter Minimum Child Range Value">{$alltests.ChildMin}</a></td>
<td><a href="#" id="ChildMax" data-type="text" data-pk="{$alltests.ID}" data-url="labtest-edit-post.php" data-title="Enter Maximum Child Range Value">{$alltests.ChildMax}</a></td>
</tr>
{/foreach}
는 시간 내 주셔서 감사합니다!
이봐, 회신 주셔서 감사합니다. 나는 그것을 풀어서 모든 필드를 편집 가능하게 만들었지 만, 원래 html로 저장하고 원래 정보를 가져온 sql 테이블을 업데이트하지 않습니다. 적어도 이상한 일이 있기 때문에 내가 고칠 수있는 이상한 일을 시도하고 있습니다. – user3342556
해결되었습니다! 당신이 말한대로했지만 각 단계마다 div 클래스를 만들고 JS의 이름을 다음과 같이 정의했습니다 : \t'$ ('. is_editable_valuename'). 편집 가능 ({name : 'valuename'}), ' 감사합니다. 다시 당신의 도움 :) – user3342556