2012-03-06 38 views
10

Tôi đang phát triển một vài biểu mẫu để công ty của tôi sử dụng. Tôi tham khảo và chèn dữ liệu vào cơ sở dữ liệu, nhưng đối với các vấn đề tiêu chuẩn tôi muốn chuyển văn bản tôi nhập vào chữ hoa, tôi làm như thế nào?cách kiểm soát hoặc thay đổi tất cả văn bản thành chữ hoa

Ví dụ về một trong các hình thức của tôi:

Tôi muốn các trường văn bản tôi nhập tự động chuyển thành chữ hoa, hoặc các dữ liệu mà tôi nhập vào cơ sở dữ liệu của tôi đã chuyển thành chữ hoa (trong trường hợp mà người dùng doesn' t nhập nó theo cách đó).


EDIT:

tôi cố gắng

$("tbCiudad").change(function() { 
    $(this).val($(this).val().toUpperCase()); 
}); 

hoặc

$("tbCiudad").keyup(function() { 
    $(this).val($(this).val().toUpperCase()); 
}); 

và không có gì xảy ra đối với lĩnh vực đó. Tôi đang làm gì sai?

+0

Tham khảo này [Làm thế nào tôi có thể buộc đầu vào cho chữ hoa trong một textbox ASP.NET?] (Http://stackoverflow.com/a/202545/500725) –

+0

không có phần tử như vậy trong html: 'tbCiudad'. bạn nên sử dụng 'input [type = text]' cho bất kỳ đầu vào văn bản nào hoặc một bộ chọn cụ thể hơn như một lớp hoặc ID –

+0

cảm ơn người đàn ông, hoạt động tuyệt vời –

Trả lời

19
$("input[type=text]").keyup(function(){ 
    $(this).val($(this).val().toUpperCase()); 
}); 
+0

điều này làm gì đó nếu tôi nhập số? hoặc nếu alredy nhập văn bản bằng chữ hoa? –

+0

tôi thử nó nhưng không xảy ra bất cứ điều gì –

+0

đó là lạ. nó sẽ hoạt động tốt, trừ khi bạn có một số lỗi javascript khác trên trang của mình. Xem [ở đây] (http://jsfiddle.net/cpF7C/) một ví dụ trực tiếp về điều này –

2

Sử dụng đồng bằng cũ JavaScript sử dụng toUpperCase()

+0

$ ("# codigoCliente").toUpperCase(), một cái gì đó như thế này? –

+0

nếu tôi nhập số thay đổi một cái gì đó ?, làm thế nào tôi kiểm soát các văn bản tôi nhập vào? nếu không phải là chữ hoa chuyển đổi nó, và nếu là chữ hoa không làm bất cứ điều gì –

+0

số sẽ không bị ảnh hưởng, nếu nó đã viết hoa, nó sẽ vẫn chạy biến đổi, nhưng không có gì thực sự sẽ được thay đổi. –

0

Sử dụng javascript phương pháp toUpperCase.

Tôi cũng chắc chắn có một chức năng trong ASP để làm điều đó như strtoupper trong PHP

0

Bạn có thể sử dụng phương pháp javacsript toUpperCase() cho chuyển đổi này.

4

Bạn có thể thêm một event handler với javascript (hoặc jquery nếu bạn muốn) để keypress hoặc blur sự kiện của những textbox và sau đó áp dụng những gì Jay Blanchard đề nghị. Một cái gì đó như thế này:

$("input[type='text']").bind("blur", null, function(e) { 
    $(this).val($(this).val().toUpperCase()); 
}); 
+0

nhờ công trình này tuyệt vời –

0

Chỉ cần áp dụng lớp CSS cho tất cả các trường bắt buộc: -

.uppercase 
{ 
    text-transform: uppercase; 
} 

Tham khảo CSS text-transform Property

1

Bạn có muốn lưu nó hoặc chỉ hiển thị nó trong chữ hoa?

Nếu bạn chỉ cần hiển thị, bạn có thể CSS:

<style type="text/css"> 
input { 
    text-transform:uppercase; 
} 
</style> 

Nếu bạn muốn lưu nó trong chữ hoa, server-side là cách tốt nhất để làm điều đó. Tôi khuyên bạn nên tạo một ModelBinder tùy chỉnh có thể gọi String.ToUpper trên mọi thuộc tính chuỗi.

Bạn cũng có thể kết hợp cả hai chiến lược này.

+0

tôi muốn hiển thị nó, và lưu nó trên chữ hoa –

+0

Điều này doesnt cửa hàng trong chữ hoa –

+1

Đó là lý do tại sao tôi nói 'Nếu bạn chỉ cần hiển thị, bạn có thể bạn CSS' – goenning

1

Sử dụng chức năng này

<script type="text/javascript" language="javascript"> 
     $(document).ready(function(){ 
     $("#text_field_id").keyup(function() { 
     $(this).val($(this).val().toUpperCase()); 
     }); 
     }); 
</script> 
Các vấn đề liên quan