2011-05-05 38 views
0

我一直在寻找一个脚本,使每个div中的所有文本都为大写字母。 我发现这个脚本:Make div toUpperCase()

<script type="text/javascript" src="Script/jquery-1.3.2.js"></script> 
<script type="text/javascript"> 

     $(document).ready(function(){ 
      $("div").text($("div").text().toUpperCase()); 
    }); 
</script> 

来源:here

然而,这个脚本需要每一个DIV,并将其添加到以前和重复下来的文件......这很难解释。

我认为

$("div").text().toUpperCase(); 
单独

应该工作...但事实并非如此。

我觉得这应该很简单...

任何和所有的帮助表示赞赏!

编辑

我不能标识这样做!它必须符合实际的要素。

回答

3

这里的问题是,你到$内心的召唤(“DIV”)每格遍历,获取文本,将其更改为大写,并将其设置为外部$('div')迭代中的当前元素。您需要遍历每个div,获取文本,并将其重置为大写版本。代码这样做如下:

<script> 
$('div').each(function(k, element) 
{ 
    $(element).text($(element).text().toUpperCase()); 
}); 
</script> 

另一种选择是也使用CSS:

<style> 
div { text-transform: uppercase; } 
</style> 
+0

CSS,太简单了。辉煌。 – Johannes 2011-05-05 03:09:47

0

您可以设置每个ID。

<div id="textDiv"> 
... 
</div> 

$("#textDiv").text().toUpperCase(); 
+0

ID是不是一种选择,我不能改变的实际的代码,我只能添加到它。 – Johannes 2011-05-05 03:00:19

3

你可以使用CSS-

div{text-transform:uppercase} 
+0

你打我吧+1 – Ibu 2011-05-05 03:07:17

0

什么:

$('div').each(function() { 
    $(this).html($(this).text().toUpperCase()); 
});