繁体   English   中英

从小写到大写

[英]From lowercase to upper case

嘿,我试图以小写字母输入文本,但是当涉及到文本框时,如果有人可以这样做,它必须是大写字母。

您可以使用 CSS 执行此操作,不需要 JavaScript 或 PHP

text-transform:uppercase
text-transform:lowercase

将这些添加到每个元素 class 的样式中。

或者,如果您使用内联样式,请执行此操作。

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

使用 PHP ( php.net doc ) 将字符串转为大写:

strtoupper("Hello")

Output: HELLO

使用 JavaScript ( java2s.com ) 将字符串转为大写:

var s = new String("Hello")
s.toUpperCase()

Output: HELLO

您的选择是:

  1. 正如 Raoul 所说,使用 CSS。 如果可以的话,这是你最好的选择。
  2. 让用户输入小写,然后在他们离开字段( blur等)或保存/处理文本时(例如,在服务器上等)进行转换。 这是一个blur的例子:

     document.getElementById('theIDOfTheTextArea').onblur = function() { this.value = this.value.toUpperCase(); };

    活生生的例子

  3. keydownkeypress事件中使用 JavaScript 执行此操作。 尽管在这里间歇性地发布了各种尝试,但使用 JavaScript 执行此操作并非易事 识别您要处理的按键并取消事件以防止添加该按键是微不足道的; 但随后插入想要的字符并非易事。 (遗憾的是,键盘事件只是让您替换一个不同的字符;这很好,但他们没有。)不幸的是,它要求您使用文本范围/选择并让您进入跨浏览器不同的区域。 您可能需要利用像Rangy这样的库来做到这一点。 我只想说不,go CSS / 后处理路线。

这篇文章的答案将解决您的问题。

  • 通过id获取文本框元素
  • 设置一个 onBlur 监听器并使用 string.toUpperCase() 转换它的值

你检查过这个吗

$("#idoftextbox").blur(function(){$(this).val($(this).val().toUpperCase())});

把它放在一个 onload 事件中

简单的:

textareaElement.onkeydown = function(e) {
    //make sure IE gets it
    e = e || event;
    //don't insert
    e.preventDefault();
    //catch the ASCII key code, and convert it to uppercase letter
    this.value += String.fromCharCode(e.keyCode).toUpperCase();
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM