|
|
|
เมื่อกรอกตัวเลขจำนวนเงิน ใน textbox ให้มันใส่คอมม่าให้เอง |
|
|
|
|
|
|
|
ลองนำไปประยุกต์ดู เอาของเขามาอีกที
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-874" />
<title>Untitled Document</title>
<script type="text/javascript" src="jquery-1.4.4.min.js"></script>
<script type="text/javascript">
function format(input){
var num = input.value.replace(/\,/g,'');
if(!isNaN(num)){
if(num.indexOf('.') > -1){
num = num.split('.');
num[0] = num[0].toString().split('').reverse().join('').replace(/(?=\d*\.?)(\d{3})/g,'$1,').split('').reverse().join('').replace(/^[\,]/,'');
if(num[1].length > 2){
alert('You may only enter two decimals!');
num[1] = num[1].substring(0,num[1].length-1);
} input.value = num[0]+'.'+num[1];
} else{ input.value = num.toString().split('').reverse().join('').replace(/(?=\d*\.?)(\d{3})/g,'$1,').split('').reverse().join('').replace(/^[\,]/,'') };
}
else{ alert('You may enter only numbers in this field!');
input.value = input.value.substring(0,input.value.length-1);
}
}
</script>
</head>
<body>
<form>
<input type="text" onkeyup="format(this)" onchange="format(this)"
onblur="if(this.value.indexOf('.')==-1)this.value=this.value+'.00'">
</form>
</body>
</html>
|
|
|
|
|
Date :
2012-07-18 19:50:11 |
By :
Krungsri |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
กระทู้นี้มีหลากหลายตัวอย่างครับ
Code (JavaScript)
<html>
<body>
<form name="frmMain" action="" method="post">
<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>
<input type="text" name="txtNumber" value="" OnChange="JavaScript:chkNum(this)">
</form>
</body>
</html>
Go to : JavaScript Number Format Comma .. พิมพ์ตัวเลขในtextbox แล้วให้มันใส่ เครื่องหมาย , เลขเช่น พิมพ์ 1000 ให้มันใส่เป็น1,000 ให้เลย
|
|
|
|
|
Date :
2012-07-18 20:52:23 |
By :
mr.win |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ขอบพระคุณท่าน Krungsri และท่าน mr.win มากครับ
|
|
|
|
|
Date :
2012-07-19 11:25:41 |
By :
nivet99 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
พบปัญหาครับว่า
แสดง comma ได้ก็จริง แล้วเวลาเก็บลงฐานข้อมูล มี comma ติดลงไปด้วย
พอเวลาดึงมาคำนวน มันมองเห็นเป็นค่าที่อยู่ ตัวแรกเท่านั้น
เช่น 5,000 + 4,000 มันมองว่าเป็น 5 +4 ครับ
แก้ยังไงครับ
|
|
|
|
|
Date :
2012-07-19 11:58:24 |
By :
nivet99 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ก่อนเก็บลงฐานข้อมูลก็ให้ php ลบคอมม่าออกครับ str_replace()
str_replace(',', '', '5,000');
|
|
|
|
|
Date :
2012-07-19 12:01:17 |
By :
ไวยวิทย์ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ตามนั้นครับ ลบ comma ออกก่อนครับ
|
|
|
|
|
Date :
2012-07-19 12:34:45 |
By :
mr.win |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ถ้าผมใส่ค่าจำนวนเงินที่มี comma ผ่าน form ที่ตัวแปร costnum1
จะแทรก str_replace(',', '', '5,000'); ยังไงครับ .
ดัง code insert
Code (PHP)
mysql_select_db($database_connectroi, $connectroi);
$insertSQL = sprintf("INSERT INTO project ( companyid,costname1, costnum1)
VALUES ( %s, %s, %s)"
GetSQLValueString($_SESSION['companyid'], "text"),
GetSQLValueString($_POST['costname1'], "text"),
GetSQLValueString($_POST['costnum1'], "text"));
$Result1 = mysql_query($insertSQL, $connectroi) or die(mysql_error());
ขอบคุณครับ
|
|
|
|
|
Date :
2012-07-19 15:28:47 |
By :
nivet99 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ดันครับ
|
|
|
|
|
Date :
2012-07-20 15:40:34 |
By :
nivet99 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Code (PHP)
mysql_select_db($database_connectroi, $connectroi);
$insertSQL = sprintf("INSERT INTO project ( companyid,costname1, costnum1)
VALUES ( %s, %s, %s)"
GetSQLValueString($_SESSION['companyid'], "text"),
GetSQLValueString($_POST['costname1'], "text"),
GetSQLValueString(str_replace(',', '', $_POST['costnum1']), "text"));
$Result1 = mysql_query($insertSQL, $connectroi) or die(mysql_error());
|
|
|
|
|
Date :
2012-07-20 15:59:59 |
By :
ไวยวิทย์ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ขอบคุณท่าน Nico มากครับ insert ลงฐานข้อมูลไม่มี comma ได้แล้ว
แต่สงสัยว่า เวลาดึงขึ้นมาในหน้า update ช่อง textbox อยากให้มี comma แสดงด้วยทำยังไงครับ
ผมใช้ funtion ของคุณ Krungsri NO.1 ด้านบนครับ
|
|
|
|
|
Date :
2012-07-20 17:23:42 |
By :
nivet99 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ใช้ฟังชั่น number_format ของ php ช่วยในการจัดฟอร์แมต
Code (PHP)
<?php echo number_format('5000',2) ?>
หากแทรกใน textbox ก็จะประมาณ
<input type="text" name="xxx" id="xxx" value="<?php echo number_format('ค่าที่ได้จากฐานข้อมูล',2) ?>" />
ไปอ่านเพิ่มเติมในบทเรียนที่พี่วินทำไว้เพิ่มเติมได้ครับ
https://www.thaicreate.com/php/php-number_format.html
|
|
|
|
|
Date :
2012-07-20 17:38:11 |
By :
ไวยวิทย์ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ขอบคุณท่าน Nico มากครับ
|
|
|
|
|
Date :
2012-07-20 18:29:37 |
By :
nivet99 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 02
|