Rumah >hujung hadapan web >tutorial js >Asp.net js melaksanakan kemahiran pemformatan_javascript jumlah

Asp.net js melaksanakan kemahiran pemformatan_javascript jumlah

WBOY
WBOYasal
2016-05-16 16:12:371845semak imbas

Mengikut keperluan pengguna, formatkan jumlah apabila memasukkannya, iaitu, pisahkan setiap tiga digit dengan koma dan kekalkan dua tempat perpuluhan.

Memandangkan pengalaman pengguna, JS digunakan untuk memformatkan amaun Kod bahagian hadapan adalah seperti berikut:

Salin kod Kod adalah seperti berikut:


Kod JS adalah seperti berikut:

Salin kod Kod adalah seperti berikut:

//======Semak sama ada input ialah nombor
semak fungsi() {
jika (!((window.event.keyCode >= 48 && window.event.keyCode <= 57) || window.event.keyCode == 46 || window.event.keyCode == 45)) {
          window.event.keyCode = 0
}
}
//======Formatkan jumlah kotak teks
function run(obj) {
var objvalue = obj.value.replace(/[,]/g, ""),
        objlength = objvalue.length,
        dtmp = objvalue.indexOf("."),
         neg = objvalue.indexOf("-");
var inttmp = 0,
floattmp = -1;
Jika (dtmp != -1) {
inttmp = dtmp == 0 ? "0" : new String(objvalue).substring(0, dtmp);
floattmp = String(objvalue) baharu.substring(dtmp 1, objlength 1);
floattmp = floattmp.replace(/[^0-9]/g, "");
}
lain {
inttmp = objvalue;
}
Jika (neg == 0) {
         inttmp = inttmp.replace(/[-]/g, "");
}
inttmp = inttmp.replace(/[^0-9]/g, "");
var tmp = "", str = "0000";
untuk (; inttmp.length > 3; ) {
        var temp = String baharu(inttmp / 1000);
Jika (temp.indexOf(".") == -1) {
            tmp = ",000" tmp;
inttmp = temp;
}
         lain {
              var le = new String(temp).split(."")[1].length;
               tmp = "," new String(temp).split(".")[1] str.substring(0, 3 - le) tmp;
             inttmp = Rentetan(temp).split(."")[0];
}
}
inttmp = inttmp tmp;
Obj.value = neg == 0 ? "-" inttmp running(floattmp) : inttmp running(floattmp);
}
//======Susun bahagian perpuluhan
fungsi berjalan(val) {
Jika (val != "-1" && val != "") {
          var valvalue = 0 "." val;
Jika (val.length >= 2) {
              valvalue = parseFloat(valvalue).toFixed(2);
}
         var temp = "." valvalue.split(".")[1];
         suhu balik;
}
​ else if (val != "0" && val == "") {
         kembalikan ".";
}
lain {
         kembalikan "";
}
}

Pada masa yang sama, kerana amaun boleh dimasukkan sebagai nombor negatif, pertimbangan "neg = objvalue.indexOf("-")" ditambah.

Berkenaan masalah pemformatan amaun, saya sering menghadapi perkara seperti ini, saya rasa ini tidak mengapa, jadi saya akan menyimpannya untuk rujukan masa hadapan.

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn