Register Register Member Login Member Login Member Login Forgot Password ??
PHP , ASP , ASP.NET, VB.NET, C#, Java , jQuery , Android , iOS , Windows Phone
 

Registered : 109,037

HOME > PHP > PHP Forum > ตัวเลขใน textbox ที่ได้จากการคำนวณ และรับค่ามา ไม่แสดงเป็น number format



 

ตัวเลขใน textbox ที่ได้จากการคำนวณ และรับค่ามา ไม่แสดงเป็น number format

 



Topic : 111556



โพสกระทู้ ( 129 )
บทความ ( 0 )



สถานะออฟไลน์




ค่าใน textbox ที่ได้จากการคำนวณไม่แสดงตาม format number ต้องใส่เป็นอะไรคะ

textbox


Code (PHP)
<script type="text/javascript">
    function Sum_number()
    {
        // ประกาศตัวแปร
		//num1 = Format(Text1, "#,###,###,###.00") 
        var num1 = document.getElementById('num1').value;
        var num2 = document.getElementById('num2').value;
        //ประกาศหากกรณีuserยังไม่คีย์ให้ค่าในกล่องเป็น 0 เพื่อป้องกันปัญหา NaN
        if (num1 == ""  ) { num1=0; }
        if (num2 == ""  ) { num2=0; }
        // ส่วนประมวลผล
        var sum = parseInt(num1) - parseInt(num2);
        document.getElementById('sum').value = sum;
    }
</script>

<script language="JavaScript">
			function chkNum(ele)
			{
				var num = parseFloat(ele.value);
				ele.value = num.toFixed(2);
			}
		</script>


<form action="" name="frm">
<table>
<tr id="b">
    <td  id="linbtn" colspan="3" align="right">รวมยอดรายการ PO ที่ออกไปแล้ว</td>
    <td  id="linbtn" align="right"><? echo number_format($total, 2); ?></td>
  </tr>
  <tr id="b">
    <td colspan="3" align="right">PR คงเหลือ</td>
    <td align="right" id="linbtnd"><input type="text" name="num1" id="num1" style="width:100px;" value="<? echo$remain; ?>" readonly> <br>
    </td>
  </tr>
  <tr>
    <td colspan="3" align="right">&nbsp;</td>
    <td align="right" id="linbtnd4">&nbsp;</td>
  </tr>
  <tr>
    <td colspan="3" align="right"><span style="padding-left:10px">ขอเบิก PO งวดนี้</span></td>
    <td align="right" id="linbtnd3"><input type="text" name="num2" id="num2" style="width:100px;" onKeyUp="Sum_number();" OnChange="JavaScript:chkNum(this)"></td>
  </tr>
  <tr>
    <td colspan="3" align="right">PR คงเหลือหลังเปิด PO งวดนี้</td>
    <td align="right" id="linbtnd2"><input type="text" name="sum" id="sum" style="width:100px;" onKeyUp="JavaScript:chkNum(this)"></td>
  </tr>
</table>

</form>




Tag : PHP, Ms SQL Server 2008, HTML/CSS, JavaScript







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2014-09-25 16:26:52 By : AnnYZaa View : 6515 Reply : 16
 

 

No. 1



โพสกระทู้ ( 535 )
บทความ ( 0 )



สถานะออฟไลน์


function Sum_number()
{
// ประกาศตัวแปร
//num1 = Format(Text1, "#,###,###,###.00")
var num1 = document.getElementById('num1').value;
var num2 = document.getElementById('num2').value;
//ประกาศหากกรณีuserยังไม่คีย์ให้ค่าในกล่องเป็น 0 เพื่อป้องกันปัญหา NaN
if (num1 == "" ) { num1=0; }
if (num2 == "" ) { num2=0; }
// ส่วนประมวลผล
var sum = parseInt(num1) - parseInt(num2);
document.getElementById('sum').value = sum;
chkNum(document.getElementById('sum'))

}
ลองดูครับ






แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-09-25 16:35:14 By : gaowteen
 


 

No. 2



โพสกระทู้ ( 129 )
บทความ ( 0 )



สถานะออฟไลน์


ตอบความคิดเห็นที่ : 1 เขียนโดย : gaowteen เมื่อวันที่ 2014-09-25 16:35:14
รายละเอียดของการตอบ ::
ตรงที่คำนวณได้แล้วค่ะ แต่ตรงที่รับค่ามา (จุด A ) ยังไม่ได้
ถ้าใส่เป็น value="<? echo number_format($total, 2); ?>" มันจะอ่านจำนวนหน้าเครื่องหมายคอมมา

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-09-26 14:09:56 By : AnnYZaa
 

 

No. 3



โพสกระทู้ ( 535 )
บทความ ( 0 )



สถานะออฟไลน์


document.getElementById('txtPayer_name').value.replace(/\,/g,'')


ประวัติการแก้ไข
2014-09-26 14:27:46
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-09-26 14:23:00 By : gaowteen
 


 

No. 4



โพสกระทู้ ( 129 )
บทความ ( 0 )



สถานะออฟไลน์


ตอบความคิดเห็นที่ : 3 เขียนโดย : gaowteen เมื่อวันที่ 2014-09-26 14:23:00
รายละเอียดของการตอบ ::
document.getElementById('num1').value.replace(/\,/g,'')
ไม่ได้ค่ะ

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-09-26 14:38:22 By : AnnYZaa
 


 

No. 5



โพสกระทู้ ( 535 )
บทความ ( 0 )



สถานะออฟไลน์


ที่ว่าไม่ได้ นี่ numberformat หรือ คำนวณไม่ได้ ครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-09-26 14:57:23 By : gaowteen
 


 

No. 6



โพสกระทู้ ( 129 )
บทความ ( 0 )



สถานะออฟไลน์


ตอบความคิดเห็นที่ : 5 เขียนโดย : gaowteen เมื่อวันที่ 2014-09-26 14:57:23
รายละเอียดของการตอบ ::
numberformat ไม่ได้ค่ะ คำนวนได้แล้วค่ะ

ช่องนี้ค่ะที่ยังไม่ได้
Code (PHP)
<input type="text" name="num1" id="num1" style="width:100px;" value="<? echo$remain; ?>" readonly>




ประวัติการแก้ไข
2014-09-26 15:03:03
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-09-26 15:01:57 By : AnnYZaa
 


 

No. 7



โพสกระทู้ ( 535 )
บทความ ( 0 )



สถานะออฟไลน์


number_format($remain, 2);
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-09-26 15:12:18 By : gaowteen
 


 

No. 8



โพสกระทู้ ( 129 )
บทความ ( 0 )



สถานะออฟไลน์


ตอบความคิดเห็นที่ : 7 เขียนโดย : gaowteen เมื่อวันที่ 2014-09-26 15:12:18
รายละเอียดของการตอบ ::
ถ้าใส่ number_format($remain, 2); มันจะอ่านแค่จำนวนแรกหน้าคอมม่า เช่น 100,000.00 จะอ่านแค่ 100 ซึ่งเอามาคำนวนจะผิด

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-09-26 15:27:58 By : AnnYZaa
 


 

No. 9



โพสกระทู้ ( 535 )
บทความ ( 0 )



สถานะออฟไลน์


ก็ผมให้ script ไปแล้ว ไง ครับ
ใส่ number_format
แล้วเอา ตัวนี้ ตัด , ออก
document.getElementById('num1').value.replace(/\,/g,'')


ประวัติการแก้ไข
2014-09-26 15:31:02
2014-09-26 15:33:15
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-09-26 15:30:47 By : gaowteen
 


 

No. 10



โพสกระทู้ ( 129 )
บทความ ( 0 )



สถานะออฟไลน์


ตอบความคิดเห็นที่ : 9 เขียนโดย : gaowteen เมื่อวันที่ 2014-09-26 15:30:47
รายละเอียดของการตอบ ::
ก็ยังไม่ได้ค่ะ

222
Code (PHP)
<script type="text/javascript">
    function Sum_number()
    {
        // ประกาศตัวแปร
		//num1 = Format(Text1, "#,###,###,###.00") 
        var num1 = document.getElementById('num1').value;
        var num2 = document.getElementById('num2').value;
        //ประกาศหากกรณีuserยังไม่คีย์ให้ค่าในกล่องเป็น 0 เพื่อป้องกันปัญหา NaN
        if (num1 == ""  ) { num1=0; }
        if (num2 == ""  ) { num2=0; }
        // ส่วนประมวลผล
        var sum = parseInt(num1) - parseInt(num2);
        document.getElementById('sum').value = sum;
		chkNum(document.getElementById('sum'))
		document.getElementById('num1').value.replace(/\,/g,'')
    }
</script>

<script language="JavaScript">

			function addCommas(nStr)
			{
				nStr += '';
				x = nStr.split('.');
				x1 = x[0];
				x2 = x.length > 1 ? '.' + x[1] : '';
				var rgx = /(\d+)(\d{3})/;
				while (rgx.test(x1)) {
					x1 = x1.replace(rgx, '$1' + ',' + '$2');
				}
				return x1 + x2;
			}

			function chkNum(ele)
			{
				var num = parseFloat(ele.value);
				ele.value = addCommas(num.toFixed(2));
				
			}
		</script>

<table width="800" border="0" cellpadding="3" cellspacing="0" class="rq">
   <tr id="b">
    <td colspan="3" align="right">PR คงเหลือ</td>
    <td align="right" id="linbtnd"><input type="text" name="num1" id="num1" style="width:100px;" value="<? echo number_format($remain, 2); ?>" readonly="readonly" class="txtbox" /></td>
  </tr>
  <tr height="15">
    <td colspan="3" align="right"></td>
    <td align="right" ></td>
  </tr>
  <tr id="b">
    <td colspan="3" align="right"><span style="padding-left:10px">ขอเบิก PO งวดนี้</span></td>
    <td align="right" ><input type="text" name="num2" id="num2" style="width:100px;" onkeyup="Sum_number();" onchange="JavaScript:chkNum(this)" class="txtbox2" placeholder="ระบุจำนวนเงิน" /></td>
  </tr>
  <tr id="b">
    <td colspan="3" align="right">PR คงเหลือหลังเปิด PO งวดนี้</td>
    <td align="right" id="linbtnd"><input type="text" name="sum" id="sum" style="width:100px;" onkeyup="JavaScript:chkNum(this)" class="txtbox2" /></td>
  </tr>
</table>


แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-09-26 16:27:24 By : AnnYZaa
 


 

No. 11



โพสกระทู้ ( 1,666 )
บทความ ( 0 )



สถานะออฟไลน์


สคริปตัวนี้จำไม่ผิดผมเป็นคนเขียนเองครับ จำได้คำว่าปัญหา Nan ผมเขียนเองตอนเขียนไม่ได้เผื่อคนที่จะนำมาใช้กับทศนิยม มาปรับปรุงให้แล้วครับ
- เปลี่ยนรุปแบบการรับตัวแปรปรับให้รองรับทศนิยมและการตัดคอมม่าออกไป
- เปลี่ยนรุปแบบการคำนวน parseint เป็น parseFloat เพื่อรองรับตัวเลขที่ไม่ไช่จำนวนเต็ม
- เพิ่มทศนิยมที่เกินมาเข้าไปในผลลัพท์
- เพิ่มคอมม่าเข้ามาในผลลัพท์เพื่อความสวยงาม

Code (PHP)
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<script type="text/javascript">
    function Sum_number()
    {
		
		 //รับตัวแปรnum1 และ num2 เพื่อเอาคอมม่าออกจะได้นำไปใช้ในการคำนวน
        var num1 = parseFloat(document.getElementById('num1').value.replace(/,/g, ''));
        var num2 = parseFloat(document.getElementById('num2').value.replace(/,/g, ''));
        //ประกาศหากกรณีuserยังไม่คีย์ให้ค่าในกล่องเป็น 0 เพื่อป้องกันปัญหา NaN
        if (num1 == ""  ) { num1=0; }
        if (num2 == ""  ) { num2=0; }
        // ส่วนประมวลผล เปลี่ยนจาก parseint เป็นparseFloat เนื่องจาก int เป็นรูปแบบของจำนวนเต็มไม่รองรับทศนิยม
        var sum = parseFloat(num1) - parseFloat(num2);
		
		//ใส่คอมม่ากลับเข้าไปเพื่อความสวยงามของผลลัพท์
        document.getElementById('sum').value = sum.toFixed(2).replace(/\d(?=(\d{3})+\.)/g, '$&,');;
    }
</script>

<script language="JavaScript">
			function chkNum(ele)
			{
				var num = parseFloat(ele.value);
				ele.value = num.toFixed(2);
			}
		</script>


<form action="" name="frm">
<table>
<tr id="b">
    <td  id="linbtn" colspan="3" align="right">รวมยอดรายการ PO ที่ออกไปแล้ว</td>
    <td  id="linbtn" align="right"><? echo number_format($total, 2); ?></td>
  </tr>
  <tr id="b">
    <td colspan="3" align="right">PR คงเหลือ</td>
    <?  //สมมุติค่าปลอมๆขึ้นมาเพื่อทดสอบ
	$Result="10,000.75"; ?>
    <td align="right" id="linbtnd"><input type="text" name="num1" id="num1" style="width:100px;" value="<?=$Result?>" readonly> <br>
    </td>
  </tr>
  <tr>
    <td colspan="3" align="right">&nbsp;</td>
    <td align="right" id="linbtnd4">&nbsp;</td>
  </tr>
  <tr>
    <td colspan="3" align="right"><span style="padding-left:10px">ขอเบิก PO งวดนี้</span></td>
    <td align="right" id="linbtnd3"><input type="text" name="num2" id="num2" style="width:100px;" onKeyUp="Sum_number();" OnChange="JavaScript:chkNum(this)"></td>
  </tr>
  <tr>
    <td colspan="3" align="right">PR คงเหลือหลังเปิด PO งวดนี้</td>
    <td align="right" id="linbtnd2"><input type="text" name="sum" id="sum" style="width:100px;" onKeyUp="JavaScript:chkNum(this)"></td>
  </tr>
</table>

</form>

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-09-26 16:31:22 By : meannerss
 


 

No. 12



โพสกระทู้ ( 129 )
บทความ ( 0 )



สถานะออฟไลน์


ตอบความคิดเห็นที่ : 11 เขียนโดย : meannerss เมื่อวันที่ 2014-09-26 16:31:22
รายละเอียดของการตอบ ::
ได้แล้วค่ะ ขอบคุณมากๆ นะคะ ^^
ขอบคุณ คุณ BIrD ด้วยนะคะ



ประวัติการแก้ไข
2014-09-26 16:42:12
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-09-26 16:40:35 By : AnnYZaa
 


 

No. 13



โพสกระทู้ ( 535 )
บทความ ( 0 )



สถานะออฟไลน์


// ประกาศตัวแปร
//num1 = Format(Text1, "#,###,###,###.00")
var num1 = document.getElementById('num1').value.replace(/,/g, ''));
var num2 = document.getElementById('num2').value.replace(/,/g, ''));


ใส่ตรงนี้ ครับ


ประวัติการแก้ไข
2014-09-26 16:44:03
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-09-26 16:41:45 By : gaowteen
 


 

No. 14



โพสกระทู้ ( 129 )
บทความ ( 0 )



สถานะออฟไลน์


ตอบความคิดเห็นที่ : 13 เขียนโดย : gaowteen เมื่อวันที่ 2014-09-26 16:41:45
รายละเอียดของการตอบ ::
ขอบคุณค่ะ

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-09-26 17:01:06 By : AnnYZaa
 


 

No. 15



โพสกระทู้ ( 281 )
บทความ ( 0 )



สถานะออฟไลน์


ตอบความคิดเห็นที่ : 11 เขียนโดย : meannerss เมื่อวันที่ 2014-09-26 16:31:22
รายละเอียดของการตอบ ::
เครื่องหมาย คอมม่า ไม่แสดงครับ

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2021-12-03 12:23:00 By : lhumdin
 


 
validation on keyup: จบทุกปัญหา
รวมถึง Format ที่หลากหลาย

accounting.min.js
http://openexchangerates.github.io/accounting.js


autoNumeric.js
http://autonumeric.org
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2021-12-03 13:22:43 By : Guest
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : ตัวเลขใน textbox ที่ได้จากการคำนวณ และรับค่ามา ไม่แสดงเป็น number format
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ FTP| ใส่แถวของตาราง ใส่คอลัมน์ตาราง| ตัวยก ตัวห้อย ตัวพิมพ์ดีด| ใส่โค้ด ใส่การอ้างถึงคำพูด| ใส่ลีสต์
smiley for :lol: smiley for :ken: smiley for :D smiley for :) smiley for ;) smiley for :eek: smiley for :geek: smiley for :roll: smiley for :erm: smiley for :cool: smiley for :blank: smiley for :idea: smiley for :ehh: smiley for :aargh: smiley for :evil:
Insert PHP Code
Insert ASP Code
Insert VB.NET Code Insert C#.NET Code Insert JavaScript Code Insert C#.NET Code
Insert Java Code
Insert Android Code
Insert Objective-C Code
Insert XML Code
Insert SQL Code
Insert Code
เพื่อความเรียบร้อยของข้อความ ควรจัดรูปแบบให้พอดีกับขนาดของหน้าจอ เพื่อง่ายต่อการอ่านและสบายตา และตรวจสอบภาษาไทยให้ถูกต้อง

อัพโหลดแทรกรูปภาพ

Notice

เพื่อความปลอดภัยของเว็บบอร์ด ไม่อนุญาติให้แทรก แท็ก [img]....[/img] โดยการอัพโหลดไฟล์รูปจากที่อื่น เช่นเว็บไซต์ ฟรีอัพโหลดต่าง ๆ
อัพโหลดแทรกรูปภาพ ให้ใช้บริการอัพโหลดไฟล์ของไทยครีเอท และตัดรูปภาพให้พอดีกับสกรีน เพื่อความโหลดเร็วและไฟล์ไม่ถูกลบทิ้ง

   
  เพื่อความปลอดภัยและการตรวจสอบ กระทู้ที่แทรกไฟล์อัพโหลดไฟล์จากที่อื่น อาจจะถูกลบทิ้ง
 
โดย
อีเมล์
บวกค่าให้ถูก
<= ตัวเลขฮินดูอารบิก เช่น 123 (หรือล็อกอินเข้าระบบสมาชิกเพื่อไม่ต้องกรอก)







Exchange: นำเข้าสินค้าจากจีน, Taobao, เฟอร์นิเจอร์, ของพรีเมี่ยม, ร่ม, ปากกา, power bank, แฟลชไดร์ฟ, กระบอกน้ำ

Load balance : Server 01
ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2024 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 อัตราราคา คลิกที่นี่