A-AA+then

สอบถามการหา input

1,225
สอบถาม อ.ครับ ผมมีฟอร์มที่จะเก็บเขา DB

<form id="test_form" action="service_add.php">
    <? $num_tr=6;//กำหนดแถวใส่ข้อมูล ?>
  <table width="100%" border="0" cellspacing="2" cellpadding="3">
  <tr>
    <td width="34%" align="center" bgcolor="#EAF4FF"><strong>รายการ</b></td>
    <td width="10%" align="center" bgcolor="#EAF4FF"><strong>จำนวน</b></td>
    <td width="9%" align="center" bgcolor="#EAF4FF"><strong>หน่วย</b></td>
    <td width="11%" align="center" bgcolor="#EAF4FF"><strong>ราคา/หน่วย</b></td>
    </tr>
  <? for($r=1; $r<$num_tr; $r++){?>
<tr id="tr[<?=$r?>]" style=" display:none">
<td align="center"><input name="item_name[<?=$r?>]" type="text"  size="70" onkeydown="show_tr(<?=($r+1)?>)"/></td>
<td align="center"><input name="qty[<?=$r?>]" type="text"  size="10" onkeypress=check_number(); /></td>

<td align="center"><input name="price[<?=$r?>]" type="text" id="price" size="15"   /></td>
<td align="center"><input name="remark[<?=$r?>]" type="text"  size="25"  /></td>
</tr>
<? } ?>


 
  <tr>
    <td colspan="4" align="center">
    
    <input type="submit" name="Submit" id="Submit" value="บันทึกรายการ" class="button" /> <input type="reset" name="Reset" id="button" value="ล้างข้อมูล" class="button"  />
    </td>
    </tr>
</table>
    </form>
    
    <script>
show_tr(1);
function show_tr(n)
{
for(var j=1; j<(n+1); j++)
{
if(j<<?=$num_tr?>){
document.getElementById('tr['+j+']').style.display="";
}
}
}
</script>


ขอถามว่าเราจะทราบได้อย่างไรว่าตัวสุดท้ายที่ส่งมาของ item_name ตัวที่เท่าไหร่ เพื่อจะวนลูปแอดลงดาต้าเบสครับ

<input name="item_name[<?=$r?>]" type="text"  size="70" onkeydown="show_tr(<?=($r+1)?>)"/>

1 ความคิดเห็น

    ไม่รู้ว่าจะตอบว่าอะไร งงกับประเด็นของคำถาม
    
    คำตอบแยกออกเป็น 2 ประเด็นครับ ผมให้แนวคิดไปนะ
    
    1.ต้องการหา input อันสุดท้ายด้วย Javascript จริงๆปล้วมันจะหาง่ายถ้ารู้จักประยุต์ใช้คำสั่ง เช่น
    
    <p id=parent><input type=text/><input type=text/><input type=text/></p>
    
    var p = document.getElementById('parent');// อ่าน p
    var inps = p.getElementsByTagName('input');// อ่าน input ทั้งหมดใน p ผลลัพท์เป็น Array
    inps[inps.length - 1].value = 'xxx';// input ตัวสุดท้าย (Array ตัวสุดท้าย)
    
    2.ต้องการหา input ตัวสุดท้าย เมื่อ submit
    
    เช่นกันครับ ถ้าเราทำ input ให้เป็น Array เราก็สามารถหา input ตัวสุดท้าย ด้วยคำสั่งของ Array ได้เช่นกัน เช่น<p <
    
    <id=parent>
<input type=text name=text[] /><input type=text name=text[] /><input type=text name=text[] /></p>
    
    เมื่อ submit
    
    $inputs = $_POST['text'];
    echo end($inputs);
    
    
     

1
^