Help Thêm dấu chấm định dạng số phần triệu - nghìn... vào custom field "giá bán"

Alexandra

Corporal
Tham gia
17/10/2017
Bài viết
100
Được Like
55
Hi xen expert,
Em mới làm quen với xenforo và đang nghiên cứu cách trình bày 1 diễn đàn theo ý của mình. Hiện em gặp 1 rắc rối là khi tạo 1 custom field thread có tên là "giá bán", chọn Options for text fieldsnumber để user nhập số vào. Tuy nhiên ở thread view thì là 1 số không có phần định dạng triệu - nghìn - đơn vị... nên nhìn rất khó biết là số bao nhiêu.
Ví dụ số: 100000000 em muốn nó hiện ra là 100.000.000 thì làm thế nào các bác?
Thanks các bác!
 

thahtrung06

Super Moderator
Thành viên BQT
Tham gia
12/11/2019
Bài viết
1,179
Được Like
519
Bạn vào phần ngôn ngữ để sửa lại nhé! Web của bạn là gì vậy?
 

Alexandra

Corporal
Tham gia
17/10/2017
Bài viết
100
Được Like
55
Bạn vào phần ngôn ngữ để sửa lại nhé! Web của bạn là gì vậy?
Em đã vào language chỉnh sửa Decimal point character, Thousands separator rồi nhưng không có mục nào đề cập đến custom field thread nên kết quả cho ra vẫn là 1000000000 bác ạ!
 

thuyet951

MasterCorporal
Tham gia
01/04/2016
Bài viết
312
Được Like
427
XF2 có sẳn chức năng chuyển đổi, để mình viết riêng một bài hướng dẫn bạn cách chuyển số thường thành định dạng tiền hoặc xem bên trang của mình đỡ phải copy
 
Sửa lần cuối:

Alexandra

Corporal
Tham gia
17/10/2017
Bài viết
100
Được Like
55
XF2 có sẳn chức năng chuyển đổi, để mình viết riêng một bài hướng dẫn bạn cách chuyển số thường thành định dạng tiền hoặc xem bên trang của mình đỡ phải copy
Cảm ơn bác, em đã tìm thấy bài của bác:
Cách thêm định dạng tiền tệ cho custom thread fields XenForo 2
Đúng cái em tìm luôn!
Bác cho em hỏi thêm là số nó hiện ra là 1,234,000.00 giờ em muốn bỏ 2 số 00 decimal thì làm thế nào ạ?
 

HungTQ

Sergeant
Tham gia
01/03/2016
Bài viết
428
Được Like
308
Bạn biết về regex thì dễ hơn nhiều k phải sửa gì cả. có thể code bạn gọi định dạng tiền tệ vào fields nên nó mới hiện kiểu vậy. Bạn có thể thử tích vào loại bỏ dấu thập phân trong thread fields hoặc vào thay đổi định dạng tiền tệ trong ngôn ngữ
 

Alexandra

Corporal
Tham gia
17/10/2017
Bài viết
100
Được Like
55
Bạn biết về regex thì dễ hơn nhiều k phải sửa gì cả. có thể code bạn gọi định dạng tiền tệ vào fields nên nó mới hiện kiểu vậy. Bạn có thể thử tích vào loại bỏ dấu thập phân trong thread fields hoặc vào thay đổi định dạng tiền tệ trong ngôn ngữ
Trong thread field không có dấu tích nào để loại bỏ dấu thập phân bác ạ. Định dạng tiền tệ nó mặc định 2 số "0" sau dấu phẩy cho tất cả các options nên em cũng không biết phải thay đổi thế nào.
IMG_20200522_213948.jpg
 

HungTQ

Sergeant
Tham gia
01/03/2016
Bài viết
428
Được Like
308
bạn vào định dạng số tích vào ô tùy chọn trong đó
 

HungTQ

Sergeant
Tham gia
01/03/2016
Bài viết
428
Được Like
308
cái other kia bạn phải điền đúng chuẩn đầu ra php
 

singhle

Gefreiter
Tham gia
24/07/2015
Bài viết
72
Được Like
28
Em điền đúng hết rồi bác ạ. Vấn đề không phải ở chỗ đó, em đã nhờ bác @thuyet951 xử lý được rồi. Cảm ơn bác.
Thấy bạn đã làm được TỰ ĐỘNG THÊM DẤU PHẨY VÀO SỐ TIỀN KHI KHÁCH NHẬP. Có thể share mình không?
Cảm ơn bạn nhiều
 

Alexandra

Corporal
Tham gia
17/10/2017
Bài viết
100
Được Like
55
Thấy bạn đã làm được TỰ ĐỘNG THÊM DẤU PHẨY VÀO SỐ TIỀN KHI KHÁCH NHẬP. Có thể share mình không?
Cảm ơn bạn nhiều
Cái này em dùng JavaScript.
Thêm 1 trường copyPrice (field) để copy giá trị này từ trường price, đồng thời tự động thêm dấu phẩy vào.
Code đây bác:
$("#copyPrice").keyup(function(event) {
$(this).val(function(index, value) {
return value
.replace(/\D/g, "")
.replace(/\B(?=(\d{3})+(?!\d))/g, ",")
;
});
});
 

singhle

Gefreiter
Tham gia
24/07/2015
Bài viết
72
Được Like
28
Cái này em dùng JavaScript.
Thêm 1 trường copyPrice (field) để copy giá trị này từ trường price, đồng thời tự động thêm dấu phẩy vào.
Code đây bác:
$("#copyPrice").keyup(function(event) {
$(this).val(function(index, value) {
return value
.replace(/\D/g, "")
.replace(/\B(?=(\d{3})+(?!\d))/g, ",")
;
});
});
Thật cảm ơn tấm lòng của bác.
Có thể hướng dẫn e rõ hơn được không.
Tại e không hiểu cách làm ra sao...
 

dcstylexf

Major
Tham gia
24/03/2015
Bài viết
2,005
Được Like
1,616
Ví dụ ID của field là price nhé!
Bạn có thể cho nó hiện giá bằng code
Mã:
{$thread.custom_fields.price|number(0)}
 

singhle

Gefreiter
Tham gia
24/07/2015
Bài viết
72
Được Like
28
Ví dụ ID của field là price nhé!
Bạn có thể cho nó hiện giá bằng code
Mã:
{$thread.custom_fields.price|number(0)}
cảm ơn bạn. Vấn đề này chủ thớt tìm được cách fix như bạn nói rồi.
Có 1 chuyện nữa là: khi người ta nhập 10000000 trong chổ nhập tiền. Thì nó tự thành 1,000,000 luôn ( lúc đang nhập - chưa đăng lên. Vì khi nhập xong, đăng lên, chủ thớt cũng fix được rồi).
Nhờ cao thủ! Cảm ơn
 

singhle

Gefreiter
Tham gia
24/07/2015
Bài viết
72
Được Like
28
Cái này em dùng JavaScript.
Thêm 1 trường copyPrice (field) để copy giá trị này từ trường price, đồng thời tự động thêm dấu phẩy vào.
Code đây bác:
$("#copyPrice").keyup(function(event) {
$(this).val(function(index, value) {
return value
.replace(/\D/g, "")
.replace(/\B(?=(\d{3})+(?!\d))/g, ",")
;
});
});
Chỉ thêm giúp mình các làm với bạn.
Mình thêm java này nàu page_... nhưng không hoạt động
 

singhle

Gefreiter
Tham gia
24/07/2015
Bài viết
72
Được Like
28
Cái này em dùng JavaScript.
Thêm 1 trường copyPrice (field) để copy giá trị này từ trường price, đồng thời tự động thêm dấu phẩy vào.
Code đây bác:
$("#copyPrice").keyup(function(event) {
$(this).val(function(index, value) {
return value
.replace(/\D/g, "")
.replace(/\B(?=(\d{3})+(?!\d))/g, ",")
;
});
});
Giúp rồi thì giúp cho đến nơi luôn đi??????
 

Top Bottom