freelance, web developer, web designer, hosting, domain name
เหมือนถามแบบไม่อยากได้คำตอบ อะไรประมาณนั้น
แค่เพิ่มการส่งค่า ไม่มีชิ้นย่อย กับ ชิ้นย่อยไปด้วย
if(ไม่มีชิ้นย่อย != "")
{
ค่าโชว์ = ค่า 0026 + ค่้า 0027;
}else{
ค่าโชว์ = ค่า 0026;
}
คำถามไม่ได้ระบุว่าบวกตอนไหน บวกทันที หรือบวกเมื่อ submit
บน PHP ก็ตามกระทู้ด้านบนเลย ใช้ if แยกข้อมุลจากการโพสต์ที่ตัวแปรของ option
ถ้า Javascript ก็ใช้ if เช่นกันตอนคำนวณ โดยใช้ document.getElementById('option_id').checked ในการตรวจสอบว่ามันถูกเลือกอยู่หรือไม่
ข้อควรระวัง เราไม่สามารถระบุ id เป็น array ได้ (แต่ name ได้ เช่น check[]) ให้เราใช้ตัวเลขกำกับลงไปให้ชัดเจนครับ เช่น check_1 check_2 (name และ id ไม่จำเป็นต้องเหมือนกัน)
เหมือนถามแบบไม่อยากได้คำตอบ อะไรประมาณนั้น
คุณ goragod เขาดีมาก ที่แนะว่าต้องถามแบบบอกรายละเอียดแบบไหน คนที่จะตอบจะได้เข้าใจคำถาม
และให้คำตอบได้ตรงจุด คนเก่งเขาเจอคำถามแบบนี้ บางคนเขาแค่อ่าน แล้วก็ปล่ยอไป
ตอนที่เราคลิกเลือกเลยคะโดยที่ยังไม่ submit เป็นการแสดงผลแบบทันที เพราะจะเอาค่าที่ได้ไปลง bd
คือถ้าเราเลือกไม่ชิ้นย่อย ก็ให้เอาค่าที่ได้มาบวกเพิ่ม
และถ้าเลือก ไม่มีชิ้นย่อยให้แสดงค่าเดิม
ประมาณนี้คะ
if(document.getElementById('option_1').checked){
result = input_1 + input_2
} else {
result = input_1
}
ประมาณนี้
<form id="form1" name="form1" method="post" action="">
<input type="radio" name="radio" id="radio" onclick="setData(2);" value="radio" /> ไม่มีขั้นย่อย
<input type="radio" name="radio2" id="radio2" onclick="setData(1);" value="radio2" /> มีขั้นย่อย
<input name="data1" type="text" id="data1" value="0026" size="10" />
</form>
<script type="text/javascript">
var originVal=null;
function setData(case_i){
var obj=document.getElementById('data1');
if(originVal==null){
originVal=obj.value;
}
if(case_i==1){ // ค่าเดิม
obj.value=originVal;
}else{ //ค่าเดิม + 1
var str=''+(parseInt(originVal)+1);
while(str.length<4){
str = '0' + str;
}
obj.value=str;
}
}
</script>
เพื่อความสมบูรณ์ อาจมีอีกหลายอย่างที่ต้องทำ และ ถ้าชุดคำสั่งด้านบน อาจมีได้หลายชุดละก็ เตรียมปวดหัวได้เลย
กลัวรึยัง.....
แต่คำตอบของคำถามทั้งหมด หาได้บนเว็บครับ ค่อยๆ ศึกษาไปนะ
ว่าแต่เห็นทำมาตั้งนานแล้ว ยังไม่เสร็จอีกรึ ?...