|
|
|
[javascript] จะคำณวนเลขแบบ multi input ยังไงดีครับ |
|
|
|
|
|
|
|
จะได้เห็นภาพ
|
|
|
|
|
Date :
2009-08-07 16:14:46 |
By :
mr.v |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
เอาโค้ดใน form มาด้วยซัก 5 อันครับ จะได้ไม่คอนฟลิก เดี๋ยวอาจมีการใส่ attr เพิ่ม หน่อย
|
|
|
|
|
Date :
2009-08-07 17:58:15 |
By :
pjgunner |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
เอาโค้ดจริงๆ เอาแท็คฟอร์มมาซัก 5 อันครับ เห็นมันมีช่องเยอะเดี๋ยวจะใช้ jQuery ผิดคับ
|
|
|
|
|
Date :
2009-08-07 17:59:32 |
By :
pjgunner |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Code (PHP)
<?php
<form name="form1" id="form1" method="post" action="?page=onepage_enter&act=save">
<td><a name="1">1/2</a>
<input type="hidden" name="room_id" value="2" />
<input type="hidden" name="bill_month" value="2009-09-01" />
</td>
<td nowrap="nowrap"><input type="text" name="cus_prefix" value="น.ส." size="1" /><input type="text" name="cus_name" value="ชื่อ" size="7" /><input type="text" name="cus_lastname" value="สกุล" size="10" /><input type="hidden" name="rectype" value="add" /></td>
<td><input type="text" name="water_end" value="" size="2" /></td>
<td><input type="text" name="water_start" value="211" size="2" /></td>
<td><div id="water_unit"></div><!--water unit--></td>
<td><input type="text" name="elec_end" value="" size="3" /></td>
<td><input type="text" name="elec_start" value="29633" size="3" /></td>
<td><div id="elec_unit"></div><!--elec unit--></td>
<td><select name="room_price" size="1">
<option value="0.00">0 ย้ายออก</option>
<option value="3200.00">3200 </option>
<option value="3400.00">3400 </option>
<option value="3500.00">3500 </option>
<option value="3700.00">3700 </option>
<option value="3900.00">3900 </option>
<option value="8000.00" selected="selected">8000 ร้านค้า</option>
<option value="9000.00">9000 ร้านค้า</option>
<option value="10000.00">10000 ร้านค้า</option>
</select>
</td>
<td><input type="text" name="water_value" value="" size="1" readonly="readonly" /></td>
<td><input type="text" name="elec_value" value="" size="1" readonly="readonly" /></td>
<td><input type="text" name="phone_value" value="" size="1" />
<input type="hidden" name="phone_start" value="1246381200" />
<input type="hidden" name="phone_end" value="1249059600" />
</td>
<td nowrap="nowrap" style="background:#D2EBFF;">
net<input type="text" name="bill_internet" value="0" size="1" maxlength="10" />
เคเบิล<input type="text" name="bill_ctv" value="0" size="1" maxlength="10" />
จอดรถ<input type="text" name="bill_carpark" value="0" size="1" maxlength="10" />
clean<input type="text" name="bill_clean" value="" size="1" maxlength="10" />
อื่นๆ<input type="text" name="bill_other" value="" size="1" maxlength="10" /><input type="text" name="bill_other_detail" value="" size="5" maxlength="255" />
</td>
<td nowrap="nowrap">
<input type="text" name="bill_total" value="" size="2" />
<img src="images/calculator.png" border="0" alt="" />
<input type="image" src="images/save.png" name="btnact" value="save" title="บันทึก" />
</td>
</form>
?>
เป็นโค้ดแบบนี้ครับ ตรง <form> จะเป็น form1 ไปจนถึงประมาณ form50 หรืออาจเพิ่ม/ลดได้อีก
ตรง input name="water_end" จะเอาไปลบกับ water_start แล้วแสดงผลที่ water_unit แล้วเอา water_unit*กับ[ค่าน้ำต่อหน่วย]=เป็น water_value แล้วเช็คอีกว่าถ้าค่าน้ำต่อหน่วยน้อยกว่า 90 ให้ water_value เท่ากับค่าน้ำที่น้อยที่สุด
ค่าไฟทำแบบเดียวกัน
แล้วใน input name="bill_total" เอาค่า water_value+elec_value+ค่าใช้จ่ายอื่นๆ+ค่าห้องมารวมๆกันครับ โดยการ onclick รูปเครื่องคิดเลข
อธิบายแบบนี้เข้าใจมั้ยอะครับ?
|
|
|
|
|
Date :
2009-08-07 18:13:38 |
By :
mr.v |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
แก้ไข
water_unit*กับ[ค่าน้ำต่อหน่วย]=เป็น water_value แล้วเช็คอีกว่าถ้าค่าน้ำต่อหน่วยน้อยกว่า 90 ให้ water_value เท่ากับค่าน้ำที่น้อยที่สุด
เป็น
water_unit*กับ[ค่าน้ำต่อหน่วย]=เป็น water_value แล้วเช็คว่าถ้า water_value(water_unit*ค่าน้ำต่อหน่วย) น้อยกว่า 90 ให้ water_value เท่ากับค่าน้ำที่น้อยที่สุดคือ 90
|
|
|
|
|
Date :
2009-08-07 18:18:20 |
By :
mr.v |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
function เดียวเรียบร้อยครับ น่าจะพอทำต่อได้
<form method="post" action=".." id="form50" name="form50">
ค่าน้ำ <input type="text" name="water" onblur="cal(this)"/>
ค่าไฟ <input type="text" name="power" onblur="cal(this)"/>
อื่นๆ <input type="text" name="power" onblur="cal(this)" />
รวม <input type="text" name="total" onblur="cal(this)" />
</form>
<script language="JavaScript">
function cal(obj)
{
frm = obj.form;
sum = 0;
for (var i=0;i<frm.length;i++)
{
val = frm.elements[i].value==""?0:frm.elements[i].value;
sum = sum+parseFloat(val);
}
alert(sum);
}
</script>
|
|
|
|
|
Date :
2009-08-07 18:19:02 |
By :
lozomac |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ลองดูอะ
Code (PHP)
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="content-type" content="text/html; charset=iso-8859-11" />
<meta name="author" content="Marosdee" />
<script type="text/javascript">
function calculate(count)
{
var total = 0;
var water = parseInt(document.getElementById('water_' + count).value);
var power = parseInt(document.getElementById('power_' + count).value);
var other = parseInt(document.getElementById('other_' + count).value);
if ( isNaN(water) )
{
water = 0;
}
if ( isNaN(power) )
{
power = 0;
}
if ( isNaN(other) )
{
other = 0;
}
total = water + power + other;
document.getElementById('total_' + count).value = total;
}
</script>
<title>Untitled 5</title>
</head>
<body>
<?php
for ( $i = 1; $i <= 50; $i ++ ) {
?>
<form method="post" action=".." id="form<?php echo $i ?>" name="form<?php echo $i ?>">
ค่าน้ำ
<input type="text" name="water" id="water_<?php echo $i ?>" onkeyup="calculate(<?php echo $i ?>)" />
ค่าไฟ
<input type="text" name="power" id="power_<?php echo $i ?>" onkeyup="calculate(<?php echo $i ?>)" />
อื่นๆ
<input type="text" name="other" id="other_<?php echo $i ?>" onkeyup="calculate(<?php echo $i ?>)" />
รวม
<input type="text" name="total" id="total_<?php echo $i ?>" />
</form>
<?php
}
?>
</body>
</html>
|
|
|
|
|
Date :
2009-08-07 18:21:00 |
By :
danya |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
เรื่อง javascript บอกตรงๆว่าไปไม่ค่อยเป็นครับ
|
|
|
|
|
Date :
2009-08-07 18:23:37 |
By :
mr.v |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ถ้าโค้ดของ คุณ A-mac ทำงานได้ก็โอเคครับ เพียงแค่ใส่ฟังชั่น onblur ทุก element คับ
ส่วน javascript ที่เขียนมาก็สั้นกว่าเขียน โดยใช้ jQuery คับ
ผมขี้เกียจเขียน jQuery อยู่เหมือนกัน หรือจะให้เขียน
|
|
|
|
|
Date :
2009-08-07 18:23:38 |
By :
pjgunner |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
เดี๋ยวผมจะลองแล้วมาบอก
|
|
|
|
|
Date :
2009-08-07 18:25:00 |
By :
mr.v |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
อะไรไม่ตรงกะรูปเลยอ่ะ มี cable มี จอดรถ มี ร้านค้า ???
|
|
|
|
|
Date :
2009-08-07 18:33:44 |
By :
pjgunner |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
คุณเอี่ยววว ผมก็แค่ยกตัวอย่างเฉยๆ ไม่อยากให้ตกกะใจ เพราะมันคำณวนเยอะม๊ากก
|
|
|
|
|
Date :
2009-08-07 23:22:15 |
By :
mr.v |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ของคุณ a-mac ไม่เวิคครับ เป็น Nan ตลอด
|
|
|
|
|
Date :
2009-08-08 00:49:46 |
By :
mr.v |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ของคุณดุนยาน่าจะได้แล้ว ลองบวกลบหน่วยน้ำแล้ว ok. แต่ยังไม่ได้ลองทั้งฟอร์ม ขอบคุณคับ
|
|
|
|
|
Date :
2009-08-08 01:21:51 |
By :
mr.v |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
กำ..กลายเป็น guest ทั้งๆ log in
preview ก็ยัง log in ไหงเป็นงี้
|
|
|
|
|
Date :
2009-08-08 01:22:43 |
By :
mr.v |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
โค้ดผม จะเอาค่าทุกอย่าง ที่อยู่ในฟอร์ม ถ้าคุณมีอย่างอื่นนอกจาก textbox ที่จะเอามาคำนวน ก็ต้องเพิ่มเงื่อนไขเองล่ะครับ
|
|
|
|
|
Date :
2009-08-08 15:54:37 |
By :
lozomac |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ของคุณ a-mac รับอะไรเข้ามาไม่ได้เลยครับ ค่าเดิมๆจากตัวอย่างก็ไม่เข้า เป็น 0 หรือ nan ตลอดเลย
แต่ผมทำเสร็จแล้ว ใช้ของคุณดุนยามาแปลงนิดนึง
|
|
|
|
|
Date :
2009-08-08 22:03:30 |
By :
mr.v |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 00
|