|
|
|
ช่วยด้วยครับเรื่อง JavaScript แสดง comma ผมโชว์ value อยู่แล้ว จะต้องใช้คำสั่งอะไรครับ |
|
|
|
|
|
|
|
ไม่ได้ครับ T____________T ลอง onclick แต่ต้องกดถึงจะขึ้นอ่ะ
|
ประวัติการแก้ไข 2014-10-08 12:43:55
|
|
|
|
Date :
2014-10-08 12:42:53 |
By :
thesin18598 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<input type="text" name="txtNumber" value="" OnChange="chkNum(this);chkNum(document.getElementsByName('vTotalAmount'));">
|
|
|
|
|
Date :
2014-10-08 12:54:46 |
By :
gaowteen |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
คือผมเรียกตัวนี้มาโชว์ใน textbox ครับ value="<!--#4DVAR vTotal-->" อันเนี้ย เหมือน php echo ข้อมูลของ database อ่ะครับ
|
|
|
|
|
Date :
2014-10-08 13:04:29 |
By :
thesin18598 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ประวัติการแก้ไข 2014-10-08 13:27:28
|
|
|
|
Date :
2014-10-08 13:16:59 |
By :
yokvoice |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
มันคือ ภาษาอัลไร
ไว้ใน
<script>
chkNum(document.getElementsByName('vTotalAmount'))
</script>
|
|
|
|
|
Date :
2014-10-08 13:17:40 |
By :
gaowteen |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ก็อปจากเน็ตมายำใหม่
Code (C#)
<script type="text/javascript">
function isNumberKey(evt) {
var charCode = (evt.which) ? evt.which : evt.keyCode;
if (charCode != 46 && charCode > 31 && (charCode < 48 || charCode > 57))
return false;
return true;
}
function ceiling(NumberStr) {
return parseFloat(NumberStr).toFixed(2);
}
function addCommas(NumberStr) {
NumberStr+= '';
NumberData = NumberStr.split('.');
Number1 = NumberData[0];
Number2 = NumberData.length > 1 ? '.' + NumberData[1] : '';
var rgx = /(\d+)(\d{3})/;
while (rgx.test(Number1)) {
Number1 = Number1.replace(rgx, '$1' + ',' + '$2');
}
return Number1 + Number2;
}
function removeCommas(NumberStr) {
return NumberStr.replace(',', '');
}
</script>
Code (C#)
<input type="text"
onkeypress="javascript:return isNumberKey(event);"
onchange="javascript:this.value = ceiling(this.value)";
onblur="javascript:this.value = addCommas(this.value);"
onfocus="javascript:this.value = removeCommas(this.value);"/>
|
|
|
|
|
Date :
2014-10-08 13:22:13 |
By :
ห้ามตอบเกินวันละ 2 กระทู้ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ขอแก้นิดนุง
Code (C#)
<script type="text/javascript">
function removeCommas(NumberStr) {
return NumberStr.replace(/,/g, '');
}
</script>
|
|
|
|
|
Date :
2014-10-08 13:32:29 |
By :
ห้ามตอบเกินวันละ 2 กระทู้ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
แก้อีกนิดนุง
Code (C#)
<script type="text/javascript">
function ceiling(NumberStr) {
return (NumberStr != '') ? parseFloat(NumberStr).toFixed(2) : '';
}
</script>
|
|
|
|
|
Date :
2014-10-08 13:36:00 |
By :
ห้ามตอบเกินวันละ 2 กระทู้ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ชื่อโปรแกรม 4D ของบริษัทครับ มันรันเวฟได้ แต่มันโบราณมากเวอร์ชั่นที่ใช้อยู่ 10 กว่าปีแล้ว ^ ^!
|
|
|
|
|
Date :
2014-10-08 13:40:08 |
By :
thesin18598 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
เพิ่ม chkNum(document.getElementsByName('vTotalAmount'))
หรือ window.onload = chkNum(document.getElementsByName('vTotalAmount'))
<script type="text/javascript">
chkNum(document.getElementsByName('vTotalAmount'))
function isNumberKey(evt) {
var charCode = (evt.which) ? evt.which : evt.keyCode;
if (charCode != 46 && charCode > 31 && (charCode < 48 || charCode > 57))
return false;
return true;
}
function ceiling(NumberStr) {
return parseFloat(NumberStr).toFixed(2);
}
function addCommas(NumberStr) {
NumberStr+= '';
NumberData = NumberStr.split('.');
Number1 = NumberData[0];
Number2 = NumberData.length > 1 ? '.' + NumberData[1] : '';
var rgx = /(\d+)(\d{3})/;
while (rgx.test(Number1)) {
Number1 = Number1.replace(rgx, '$1' + ',' + '$2');
}
return Number1 + Number2;
}
function removeCommas(NumberStr) {
return NumberStr.replace(',', '');
}
</script>
|
|
|
|
|
Date :
2014-10-08 13:48:05 |
By :
gaowteen |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
คือ อยากให้มันโชว์ คอมม่า ตอนเปิดเข้าเลยอ่ะครับ
คือตอนนนี้ มันโชว์แบบนี้อยู่ 22156
ผมเลยใส่ JAVA script ไปช่วยให้โชว์ แบบนี้ 22,156.00 แต่คำสั่งที่เอาไปวางใน textbox
อย่างอันนี้ OnChange="JavaScript:chkNum(this)" ผมเข้าใจว่า จะใส่ คอมม่า กับ ทศนิยมให้ เมื่อในช่องเกิดการเปลี่ยนแปลง
อย่างอันนี้ OnClick="JavaScript:chkNum(this)" ผมเข้าใจว่า จะใส่ คอมม่า กับ ทศนิยมให้ เมื่อ คลิ๊ก ที่ช่อง
ผมอยากได้แบบเปิดหน้าเว็ปเข้าไปแล้ว โชว์เลยมีไหมครับ หรือว่าต้องเขียนเพิ่มอย่างไง ช่วยแนะนำด้วยนะครับ ^ ^
|
|
|
|
|
Date :
2014-10-08 13:53:05 |
By :
thesin18598 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
คุณใช้ภาษาอะไร generate HTML คุณก็ใช้ภาษานั้นแปลง ค่าที่ได้ให้มี comma ใส่ลงไปใน value ครับ
javascript เหมาะที่จะใช้ทำในรูปแบบ event
ถึงมันจะทำได้ ตอน ออนโหลด แต่ทำจาก Server มาเลยจะง่ายกว่าครับ
โค๊ดข้างล่างนี่เป็นตัวอย่างจาก php document นะครับ
Code (PHP)
<?php
$number = 1234.56;
// english notation (default)
$english_format_number = number_format($number);
// 1,235
// French notation
$nombre_format_francais = number_format($number, 2, ',', ' ');
// 1 234,56
$number = 1234.5678;
// english notation without thousands separator
$english_format_number = number_format($number, 2, '.', '');
// 1234.57
?>
|
|
|
|
|
Date :
2014-10-08 14:15:11 |
By :
Chaidhanan |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
น่าต่าภาษามันประมาณนี้แหละครับ เรียกตัวแปรจากที่นี้ไปโชว์หน้าเว็ป คิดว่าจะใช้ Java ไปช่วยได้ เพราะเรียกไปโชว์ใน textbox
C_TEXT($1)
vPO num:=Substring($1;2)
ARRAY TEXT(aApp;0)
LIST TO ARRAY("Approve";aApp)
QUERY([PO MASTER];[PO MASTER]PO num=vPO num)
QUERY([PO SUB];[PO SUB]PO num=vPO num)
vApp:=[PO MASTER]V3_Approve Name
vPO num:=[PO MASTER]PO num
vScode:=[PO MASTER]Scode
vDept:=[PO MASTER]Department
vSection:=[PO MASTER]Section
vIssued date:=[PO MASTER]Issued date
vPerson name:=[PO MASTER]Person name
vTotal:=[PO MASTER]Total
SEND HTML FILE("prDetailnormal.html")
ผมลองใช้ onclick แล้วพอไปคลิ๊กมันโชว์ไง ก็เลยคิดว่าน่าจะทำได้ ถ้าไม่ได้ ผมคงต้องวิธีอื่นเอา ขอบคุณมากๆนะครับ
|
ประวัติการแก้ไข 2014-10-08 16:03:10
|
|
|
|
Date :
2014-10-08 15:59:50 |
By :
thesin18598 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
java != javascript นะจ๊ะ
|
|
|
|
|
Date :
2014-10-08 16:09:55 |
By :
ห้ามตอบเกินวันละ 2 กระทู้ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
อันนี้ใช้ rad version ไหนครับ
ลองคำสั่งนี้ดูครับ
ShowMessage(Format('Number = %n', [12345.678]));
|
|
|
|
|
Date :
2014-10-08 16:22:21 |
By :
Chaidhanan |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
เวอร์ชั่น 2003 ครับ ผมพึ่งมาทำงานที่นี้ เค้าใช้กันมาเป็น 10 แล้ว ผมเห็นว่ามันรัน HTML ได้ เป็น WEB server เองในตัวได้ด้วย
ผมเลยเอาขึ้นเว็ป
ShowMessage(Format('Number = %n', [12345.678])); อันนี้เป็นคำสั่งของอะไรครับ
|
|
|
|
|
Date :
2014-10-08 16:32:38 |
By :
thesin18598 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
เป็นคำสั่ง ของ delphi ครับ
Format('Number = %n', [12345.678]) เป็นคำสั่ง แปลงค่าตัวเลข ในรูปแบบมี comma ครับ
ส่วน ShowMessage() ก็เหมือนคำสั่ง alert() ใน javascript ครับ แต่มัน run บน window app
ซึ่งผมไม่ได้เอาออกครับ
โดยรูปแบบแล้วควรจะเป็น varName: String := Format('Number = %n', [12345.678]);
จากรูปแบบ varName type := value; ที่ผมใช้มาก็มี แต่ของ pascal ซึ่งสมัยนี้ก๊มีแต่ Delphi ครับที่ใช้
สำหรับภาษาอื่นผมยังไม่เคยเห็นครับ (อาจจะมี)
|
|
|
|
|
Date :
2014-10-08 16:53:48 |
By :
Chaidhanan |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
เคยเจอคำสั่งแบบนี้อยู่นะครับ ตอนเขียน export ออกมาเป็น text แต่ลองเอามาใช้แล้วก็ไม่ขึ้น
ตอนนี้ผมเลิกงานเอาไวพรุ้งนี้จะลองดูครับ ขอบคุณมากครับ ^_____________^
vTotal:=replace string(string([PO MASTER]Total);",";".")
|
|
|
|
|
Date :
2014-10-08 19:00:39 |
By :
thesin18598 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
value="<!--#4DVAR vTotal-->"
คำสั่งบันทัดบนให้เปลี่ยนเป็น
value="<#4DVAR vTotal>"
|
|
|
|
|
Date :
2014-10-08 21:02:56 |
By :
Chaidhanan |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ได้แล้วครับ แต่ไม่ได้โชว์ใน textbox ^____________^ ถ้าผมอยากให้มี ทศนิยมต้องเพิ่มตรงไหนครับ
Code (Java)
<script type="text/javascript">
function formatMoney(inum){
var s_inum=new String(inum);
var num2=s_inum.split(".",s_inum);
var l_inum=num2[0].length;
var n_inum="";
for(i=0;i<l_inum;i++){
if(parseInt(l_inum-i)%3==0){
if(i==0){
n_inum+=s_inum.charAt(i);
}else{
n_inum+=","+s_inum.charAt(i);
}
}else{
n_inum+=s_inum.charAt(i);
}
}
if(num2[1]!=undefined){
n_inum+="."+num2[1];
}
return n_inum;
}
var inum=<!--#4DVAR vTotal-->;
document.write(formatMoney(inum));
</script>
|
ประวัติการแก้ไข 2014-10-13 08:31:36
|
|
|
|
Date :
2014-10-13 08:23:47 |
By :
thesin18598 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ได้แล้วครับ ^______________^
Code (Java)
<script type="text/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;
}
var inum=<!--#4DVAR vTotal-->;
document.write(addCommas(inum.toFixed(2)));
</script>
|
|
|
|
|
Date :
2014-10-13 08:38:28 |
By :
thesin18598 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 04
|