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 > คำสั่งในการเขียน format number ใน javascript ทำมานานแล้วยังไม่ได้เลยครับ



 

คำสั่งในการเขียน format number ใน javascript ทำมานานแล้วยังไม่ได้เลยครับ

 



Topic : 066059



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



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



ผมต้องการ ใช้ format number เพื่อใส่เครื่องหมายคอมม่าเข้าไปแต่ผมคิดไม่ออกว่าต้องทำยังไงครับ

Code (PHP) ผมใช้ตัวนี้ค่าที่ได้ปกติ
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;
	}


document.getElementById("total").innerHTML = addCommas(total);


แต่มันมีปัญหาตรงส่วนนี้ครับผมจะแปลงยังไงให้มันแสดงเป็นตัวเลขโดยมีเครื่องหมายคอมม่า โดยผลของส่วนนี้จะนำไปรวมกับค่าอีกตัวด้านล่าง โดยใช้คำสั่งด้านบน คือ document.getElementById("total").innerHTML = addCommas(total); ผมลองเขียนดูแล้วปรากฎว่าค่าที่ได้มันเป็น nan ผมเลยไม่รู้ว่าต้องทำยังไง รบกวนพี่ๆๆช่วยผมหน่อยน่ะครับ

Code (PHP)
document.getElementById("setup").innerHTML = 25000;   
document.getElementById("programe").innerHTML = 25000;  




Tag : PHP









ประวัติการแก้ไข
2011-09-06 16:42:49
Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2011-09-06 16:41:51 By : chonburi f.c View : 1826 Reply : 6
 

 

No. 1



โพสกระทู้ ( 74,058 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

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

ค่า total มันเป็นอะไรครับ ลองเอา function addCommas() ออกก่อนครับ ว่ามัน write อะไรลงไป






แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-09-06 16:47:31 By : webmaster
 


 

No. 2



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



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

ตอบความคิดเห็นที่ : 1 เขียนโดย : webmaster เมื่อวันที่ 2011-09-06 16:47:31
รายละเอียดของการตอบ ::
code เต็มจะไ้ด้แบบนี้ครับ จะเอาสองตัวบวกกันเพื่อที่จะรวมเป็น total แต่มันไม่แสดง ส่วนที่เป็ฯด้านล่าง 3 ตัวแสดงหมด

document.getElementById("setup").innerHTML = 55000;
document.getElementById("program").innerHTML = 99000;



function findtotal() {

var total4 = document.getElementById('setup').innerHTML *1;//
var total5 = document.getElementById('program').innerHTML *1;//

var total = total4 +total5 ;
var sum = total * 7 / 100;
var totalsum = total + sum ;

document.getElementById("total").innerHTML = addCommas(total);
document.getElementById("sum").innerHTML = addCommas(sum);
document.getElementById("totalsum").innerHTML = addCommas(totalsum);
}


แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-09-06 16:57:39 By : chonburi f.c
 

 

No. 3



โพสกระทู้ ( 74,058 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

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

Code
var total4 = document.getElementById('setup').innerHTML *1;//
var total5 = document.getElementById('program').innerHTML *1;//

var total = total4 +total5 ;
var sum = total * 7 / 100;
var totalsum = total + sum ;


ดึงค่าแบบนี้ได้ด้วยเหรอครับ ผมไม่รู้น่ะ ไม่แน่ใจ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-09-06 17:29:57 By : webmaster
 


 

No. 4



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



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

ตอบความคิดเห็นที่ : 3 เขียนโดย : webmaster เมื่อวันที่ 2011-09-06 17:29:57
รายละเอียดของการตอบ ::
ค่ามันก็ออกน่ะครับพี่วิน เอางี่แล้วกันครับเดี่ญวผมอธิบายใหม่



Code (PHP) เป็นคำสั่งที่ใช้ในการแสดงค่าทั้งหมด ที่นี่ ตรงด้านล่าง ที่ผมใส่ addCommas ไปแล้วค่าที่ได้แสดงปกติปัญหาคือ ผมจะนำค่าจาก

document.getElementById("setup").innerHTML = 55000;
document.getElementById("program").innerHTML = 99000;


แสดงแบบมีคอมม่าแล้วนำไปบวกกันโดยใช้ function findtotal เป็นตัวรวมคะแนน ครับ คือประมาณว่ามันรวมกันแล้ว ไม่ได้ครับ




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 ShowReg(op) {
	

if (op == "1") {
   
  // document.getElementById("setup").innerHTML = 25000;
  // document.getElementById("program").innerHTML = 0;
  // document.getElementById("mainten").innerHTML = 0;
  // document.getElementById("totalpeple").innerHTML = 0;
  document.getElementById('peple').style.visibility = 'hidden'; 
 
  // document.getElementById('peple').value='';
 
  findtotal();
 }
  if (op == "2") {
   
   document.getElementById("setup").innerHTML = 55000;
   document.getElementById("program").innerHTML = 99000;
   document.getElementById("mainten").innerHTML = 0;
   document.getElementById("totalpeple").innerHTML = 0;
   document.getElementById('peple').style.visibility = 'hidden';
   document.getElementById('pic').innerHTML='';

   findtotal();
  }
  
  if (op == "3") {
   
   document.getElementById("setup").innerHTML = 0;
   document.getElementById("program").innerHTML = 0;
   document.getElementById("mainten").innerHTML = 0;
   document.getElementById('peple').style.visibility = 'visible'; 
   document.getElementById('peple').value='';
   document.getElementById('pic').innerHTML='';
 
   findtotal();
  }
  if (op == "4") {
   
   document.getElementById("setup").innerHTML = 0;
   document.getElementById("program").innerHTML = 0;
   document.getElementById("totalpeple").innerHTML = 0;
   document.getElementById("mainten").innerHTML = 14850;
   document.getElementById('peple').style.visibility = 'hidden';
   document.getElementById('pic').innerHTML='';

    findtotal();
  }
  
  if (op == "5") {
   
  document.getElementById("setup").innerHTML = 25000;
  document.getElementById("program").innerHTML = 0;
  document.getElementById("mainten").innerHTML = 0;
  document.getElementById("totalpeple").innerHTML = 0;
  document.getElementById('peple').style.visibility = 'visible'; 
  document.getElementById('peple').value='';
  document.getElementById('pic').innerHTML='<img src="larg.jpg">';
 
   findtotal();
  }
  if (op == "6") {
   
  document.getElementById("setup").innerHTML = 18000;
  document.getElementById("program").innerHTML = 0;
  document.getElementById("mainten").innerHTML = 0;
  document.getElementById("totalpeple").innerHTML = 0;
  document.getElementById('peple').style.visibility = 'visible'; 
  document.getElementById('peple').value='';
  document.getElementById('pic').innerHTML='<img src="midium.jpg">';
 
   findtotal();
  }
  if (op == "7") {
   
  document.getElementById("setup").innerHTML = 10000;
  document.getElementById("program").innerHTML = 0;
  document.getElementById("mainten").innerHTML = 0;
  document.getElementById("totalpeple").innerHTML = 0;
  document.getElementById('peple').style.visibility = 'visible'; 
  document.getElementById('peple').value='';
  document.getElementById('pic').innerHTML='<img src="small.jpg">';
 
   findtotal();
  }
  
   
}



function ShowReg2(op) {

if (op == "1") {
   document.getElementById("totalhosting").innerHTML = 1000;
  
    findtotal();
  }
  if (op == "2") {
   document.getElementById("totalhosting").innerHTML =2000;
   findtotal();
  }
   if (op == "3") {
   document.getElementById("totalhosting").innerHTML =3000;
   findtotal();
  }
   if (op == "4") {
   document.getElementById("totalhosting").innerHTML =4000;
   findtotal();
  }
   if (op == "5") {
   document.getElementById("totalhosting").innerHTML =5000;
   findtotal();
  }
   if (op == "6") {
   document.getElementById("totalhosting").innerHTML =6000;
   findtotal();
  }
   if (op == "7") {
   document.getElementById("totalhosting").innerHTML =7000;
   findtotal();
  }
   if (op == "8") {
   document.getElementById("totalhosting").innerHTML =8000;
   findtotal();
  }
   if (op == "9") {
   document.getElementById("totalhosting").innerHTML =9000;
   findtotal();
  }
   if (op == "10") {
   document.getElementById("totalhosting").innerHTML =10000;
   findtotal();
   }  
  
}



function ShowReg4(op) {

if (op == op) {
 
document.getElementById("totalpeple").innerHTML =op*12*10 ;
findtotal();
}

}


function ShowReg5(op) {

if (op == op) {
 document.getElementById('year_register').style.visibility = 'visible'; 
}

}


function findtotal() {
  
  var total1 = document.getElementById('totalhosting').innerHTML *1//
  
  //document.write(typeof(total7));
  
  var total3 = document.getElementById('totalpeple').innerHTML *1;
  var total4 = document.getElementById('setup').innerHTML *1;// 
  var total5 = document.getElementById('program').innerHTML *1;//
  var total6 = document.getElementById('mainten').innerHTML *1;//
  //var total7 = document.getElementById('set').innerHTML ;//
  
  var total = total1 + total3 + total4 +total5 +total6 ;
  var sum = total * 7 / 100;
  var totalsum = total + sum ;
   
  document.getElementById("total").innerHTML = addCommas(total);
  document.getElementById("sum").innerHTML = addCommas(sum);
  document.getElementById("totalsum").innerHTML = addCommas(totalsum);
  
}

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-09-06 17:37:53 By : chonburi f.c
 


 

No. 5



โพสกระทู้ ( 74,058 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

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

ทำไมผมลองแล้วได้ปกติครับ หรือไม่ลองครอบด้วย parseFloat ครับ

Go to : JavaScript toFixed() Formatting numbers for currency
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-09-06 18:03:47 By : webmaster
 


 

No. 6



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



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

ตอบความคิดเห็นที่ : 5 เขียนโดย : webmaster เมื่อวันที่ 2011-09-06 18:03:47
รายละเอียดของการตอบ ::
ออ ลืมบอกพี่วินไปครับว่าจะมีอีกหน้าที่ใช่ แสดงค่า ต่างๆ

คืออยากให้ตรง <span id=setup> <span id=program> มันแสดงค่าแบบมีคอมม่า แล้วก็นำค่าของทั้งสองมารวมกัน โดยใช้ <span id =total> มาแสดง โดยทีมีคอม ม่าเหมือนกัน แต่ตอนนี้ ค่าที่ได้ ตรง total มีคอมม่า แต่ setup กับ program ไม่มีครับ เลยไม่รู้ว่าจะแก้ไขยังไงแล้วครับ

<TR>
<TD>ชั่วโมง</TD>
<TD align="right"><font color="blue"><span id="setup">0</span></font></TD>
<TD align="right">บาท </TD>
<TD align="right">&nbsp;</TD>
</TR>
<TR>
<TD>ราคา / ชั่วโมง</TD>
<TD align="right"><font color="blue"><span id="program">0</span></font></TD>
<TD align="right">บาท </TD>
<TD align="right">&nbsp;</TD>
</TR>
<TR>
<TD>รวม</TD>
<TD align="right"><font color="blue"><span id="total">0</span></font></TD>
<TD align="right">บาท </TD>
<TD align="right">&nbsp;</TD>
</TR>


แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-09-06 18:11:49 By : chonburi f.c
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : คำสั่งในการเขียน format number ใน javascript ทำมานานแล้วยังไม่ได้เลยครับ
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ 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 อัตราราคา คลิกที่นี่