เกี่ยวกับการรับค่าวนครับ

พูดคุย แลกเปลี่ยน ปัญหา การเขียน JavaScript เครื่องมือ AJAX Web 2.0 AJAX Framework Jquery

Moderator: mindphp

ภาพประจำตัวสมาชิก
oxygenyoyo
PHP Hero Member
PHP Hero Member
โพสต์: 140
ลงทะเบียนเมื่อ: 01/01/1970 7:00 am

เกี่ยวกับการรับค่าวนครับ

โพสต์โดย oxygenyoyo » 02/09/2008 6:38 pm

คือผมทำ form ที่รับค่าโดยสมมติว่าให้เลือกความต้องการ textfiled ก่อนว่าจะเอากี่อันก็ได้ครับเช่น ใส่ 5
ก็จะมี textfield ออกมา ตามจำนวนที่ใส่โดยชื่อของแต่ละ textfiled จะอ้างอิงด้วยชื่อดังนี้อ่ะครับ

<input type="text" name"model_name_<?=$i?>" > ตัวแปร $i ก็ตามครั้งที่รันอ่ะครับ

ทีนี้ผมต้องการที่ว่าจะให้เค้าเลือกค่าเพื่อให้มันมาปรากฎตาม text ที่ปรากฎเช่น

ผมเลือกค่าที่เป็น สตริงว่า "test" แล้วอยากให้มันไปโผล่ที่ model_name_1 ซึ่งตรงจุดนี้ที่มีปัญหาครับ

คือ javascript ไม่สามารถอ้างอิง อย่างนี้ได้อ่ะครับ document.form1.model_name_+no+.value="test"
สมมติว่าตัวแปร no เป็นค่าที่รับเข้ามาในฟังก์ชั่นอ่ะครับเป็นลำดับของ text field ที่ต้องการให้ปรากฎค่าที่เลือก

ผมจึงสงสัยว่ามีวิธีอื่นอีกไหมครับที่พอจะรองรับได้อ่ะครับ

ภาพประจำตัวสมาชิก
mindphp
ผู้ดูแลระบบ MindPHP
ผู้ดูแลระบบ MindPHP
โพสต์: 18894
ลงทะเบียนเมื่อ: 22/09/2008 6:18 pm
ติดต่อ:

Re: เกี่ยวกับการรับค่าวนครับ

โพสต์โดย mindphp » 02/09/2008 7:10 pm

เอา loop ทำวน ใน javascript ด้วย
Loop
document.form1.model_name_<?php echo $i; ?>.value="test"
ติดตาม VDO: http://www.youtube.com/c/MindphpVideoman
ติดตาม FB: https://www.facebook.com/pages/MindphpC ... 9517401606
หมวดแชร์ความรู้: viewforum.php?f=29
รับอบรม และพัฒนาระบบ: viewtopic.php?f=6&t=2042

ภาพประจำตัวสมาชิก
oxygenyoyo
PHP Hero Member
PHP Hero Member
โพสต์: 140
ลงทะเบียนเมื่อ: 01/01/1970 7:00 am

Re: เกี่ยวกับการรับค่าวนครับ

โพสต์โดย oxygenyoyo » 02/09/2008 9:09 pm

ยังไม่ได้่อ่ะครับ

เพราะว่าตัวแปร $i จะอ้างอิงจากไหนอ่ะครับ คือคุณ mindphp ให้ผมทำลูปในฟังก์ชั่นของ javascript อีกหรอครับ ผมเข้าใจถูกต้องไหมครับ

ภาพประจำตัวสมาชิก
mindphp
ผู้ดูแลระบบ MindPHP
ผู้ดูแลระบบ MindPHP
โพสต์: 18894
ลงทะเบียนเมื่อ: 22/09/2008 6:18 pm
ติดต่อ:

Re: เกี่ยวกับการรับค่าวนครับ

โพสต์โดย mindphp » 02/09/2008 9:29 pm

ทำลูปแบบเดียวกับ ตอนที่ สร้าง input filed เลยครับ แต่ ทำใช้ tag javascript เพื่อให้ php gen javascript ขึ้นมาเหมือนกับ ให้ php gen input field ขึ้นมาใช้

หรือถ้าไม่สะดวกแบบที่แนะนำก็ ใช้ array ใน javascript แทนก็ได้
ติดตาม VDO: http://www.youtube.com/c/MindphpVideoman
ติดตาม FB: https://www.facebook.com/pages/MindphpC ... 9517401606
หมวดแชร์ความรู้: viewforum.php?f=29
รับอบรม และพัฒนาระบบ: viewtopic.php?f=6&t=2042

ภาพประจำตัวสมาชิก
oxygenyoyo
PHP Hero Member
PHP Hero Member
โพสต์: 140
ลงทะเบียนเมื่อ: 01/01/1970 7:00 am

Re: เกี่ยวกับการรับค่าวนครับ

โพสต์โดย oxygenyoyo » 02/09/2008 10:05 pm

โค้ด: เลือกทั้งหมด

<form action="group_create.php" method="post" enctype="multipart/form-data" name="test" id="form1">
  <table width="817" border="1">
    <tr>
      <td colspan="2" align="center">Group Create </td>
    </tr>
    <tr>
      <td>ใส่จำนวนนางแบบที่จะจัดใส่กลุ่ม :
</td>
      <td width="594"><input name="model_num" type="text" size="3" maxlength="3" onchange="document.test.submit('group_create.php')" /></td>
    </tr>
   <?
   $no=1;
   $model_num   =   $_POST[model_num];
   for($i=1;$i<=$model_num;$i++)
   {
   ?>
    <tr>
   
      <td align="right">นางแบบคนที่ <?=$no?> </td>
      <td><input name="model_name_<?=$i?>" type="text"   />
      &nbsp; <input type="button" name="model_<?=$i?>" value="เลือกนางแบบ" onclick="model_chose(<?=$i?>)" /></td>
 
    </tr>
   <?
   $no++;
   }
   ?>
  </table>
</form>


เนี้ยอ่ะครับโค้ด คือผมทดลองแค่ให้ค่ามันโชว์ตามกับ field ที่เลือกยังทำไม่ได้เลยอ่ะครับ

สมมติว่าฟังก์ชั่น model_chose() ให้โชว์คำว่า test ตรงกับช่องที่คลิกปุ่มเลือกอ่ะครับ

ผมลองเป็นตัวสตริงธรรมดาอ่ะได้แต่เป็นตัวแปรต่อไม่ได้อ่ะครับเช่น

document.test.model_name_1.value = "test"; << อย่างนี้ได้ชัวร์

document.test.show.value= "test"; << โดยตัวแปร show = model_name_1

อ่ะครับ

ภาพประจำตัวสมาชิก
mindphp
ผู้ดูแลระบบ MindPHP
ผู้ดูแลระบบ MindPHP
โพสต์: 18894
ลงทะเบียนเมื่อ: 22/09/2008 6:18 pm
ติดต่อ:

Re: เกี่ยวกับการรับค่าวนครับ

โพสต์โดย mindphp » 02/09/2008 10:55 pm

document.test.model_name_1.value = "test"; << อย่างนี้ได้ชัวร์
ที่นี่แนะ แบบนี้เลยครับ ให้ ใช้ php gen javascript ขึ้นมาเพื่อ ให้มันทำงานใน ลักษณะ แบบนั้น
่เช่น
เปิด javascript
คำสั่งของ javascript จะเขียน เป็น function ขึ้นมาก็ได้ โดยข้างใน มี
<?php
$model_num = $_POST['model_num'];
for($i=1;$i<=$model_num;$i++) {
echo 'document.test.model_name_'.$i.'.value = "**********"';// << ค่าตามที่ต้องการจะใส่
}
?>

ปิด javascript

ปล.เขียนสดลองเอาไป รันดูครับ
ติดตาม VDO: http://www.youtube.com/c/MindphpVideoman
ติดตาม FB: https://www.facebook.com/pages/MindphpC ... 9517401606
หมวดแชร์ความรู้: viewforum.php?f=29
รับอบรม และพัฒนาระบบ: viewtopic.php?f=6&t=2042

ภาพประจำตัวสมาชิก
oxygenyoyo
PHP Hero Member
PHP Hero Member
โพสต์: 140
ลงทะเบียนเมื่อ: 01/01/1970 7:00 am

Re: เกี่ยวกับการรับค่าวนครับ

โพสต์โดย oxygenyoyo » 02/09/2008 11:08 pm

ขอบคุณครับ

แต่ผมยังไม่ได้ลองคือพอดีเจอทางอื่นที่พอจะแถไปได้บ้างอ่ะ แฮะๆ

แต่ยังไงผมต้องกลับมาลองแน่นอนครับ


ย้อนกลับไปยัง

ผู้ใช้งานขณะนี้

กำลังดูบอร์ดนี้: 6 และ บุคคลทั่วไป 0 ท่าน