【问题标题】:Capitalize the first letter of each word while typing in Drupal 7 [closed]输入 Drupal 7 时将每个单词的首字母大写 [关闭]
【发布时间】:2014-02-10 20:09:33
【问题描述】:

在 Drupal 7 中输入时如何将每个单词的第一个字符大写?

我的意思是,在创建节点并输入节点标题时,在输入内容时,它会将每个单词的第一个字符大写。

我知道它使用 JavaScript 进行这种大写,我发现了一些类似的 JavaScript 函数:

function ucFirstAllWords( str )
{
    var pieces = str.split(" ");
    for ( var i = 0; i < pieces.length; i++ )
    {
        var j = pieces[i].charAt(0).toUpperCase();
        pieces[i] = j + pieces[i].substr(1);
    }
    return pieces.join(" ");
}

如何在 Drupal 上应用它,例如 page.tpl.php 文件和/或 CCK 字段。

注意 1:我不想使用 css,因为它只是为了显示。

注意 2:我不想使用 PHP ucwords(),因为它不影响数据库保存。

关于我不想使用的更多信息:

  • 我不想使用PHP函数ucwords(),我必须使用PHP,因为它是Drupal。
  • 我不想使用 CSS,因为 CSS 所做的是显示更改,它不会更改实际值。而且我不想使用ucwords() 函数,因为它不会影响数据库。如果我使用ucwords(),是的,它适用于显示(在 html 页面上),但它不适用于数据库保存。如果我输入“heLLo world”,它会显示“Hello World”,但在数据库中它存储为输入“heLLo world”。

【问题讨论】:

  • 如果你不想用php,为什么要用php标记问题??
  • 你的笔记对我来说没有多大意义,如果只是为了展示,你应该使用css。第二个我就是不明白。
  • 如果你在将数据放入数据库之前申请ucwords(),那不就行了吗?
  • @herci 这完全取决于您在哪里使用ucwords(),在输入或输出上...​​...
  • 我不明白这个问题有什么不清楚的地方(=关闭的原因)。我希望我通过最近的(建议的)编辑添加的内容足以让这个问题被投票重新打开......手指交叉!

标签: javascript php drupal drupal-7 capitalization


【解决方案1】:

为什么要使用 PHP 或 JS?只需使用纯 CSS:

.text_element { text-transform:capitalize; }

【讨论】:

  • 我同意,尽管他说不要使用 css
  • @Dragon,我的意思是,OP 可以使用 PHP 添加该类和echo 文本,没有问题。
  • php 也不允许!
  • 既然他改了问题,这个就不适用了;(
  • @Dagon 不,我没有改变问题。
【解决方案2】:

也许更好的方法是简单地尝试一些客户端验证模块。 例子:

【讨论】:

  • 谢谢,我已经使用了字段验证模块,但它可以验证。如果用户没有输入“正确”的内容,它只是不接受不转换值。
猜你喜欢
  • 2015-11-10
  • 2020-08-30
  • 2015-11-04
  • 2012-11-11
  • 2012-07-24
  • 1970-01-01
  • 2016-12-05
  • 2016-01-10
  • 1970-01-01
相关资源
最近更新 更多