4

13 個のテキストフィールドを含むページがあります。ボタンをクリックすると、すべてのテキストフィールドのデータの大文字と小文字を大文字に変更したいと考えています。Jquery/javascript を使用できます。CSS-Text-transform プロパティは、実際には大文字と小文字を変換するのではなく、事実上のみ変換するため、絶対に使用したくありません。

単一の関数を使用してこのタスクを達成するにはどうすればよいですか?

ありがとう、イェシュワント

4

4 に答える 4

9

メソッドを使用できますval

$('#button').click(function(){
   $('input[type=text]').val(function(i, oldVal){
       return oldVal.toUpperCase()
   })
})
于 2012-08-23T09:35:53.807 に答える
1

jQuery を使用したくない場合は、次のようにします。

var inputs = document.getElementsByTagName('input');
for (var i = 0; i < inputs.length; i++) {
    var input = inputs[i];
    if (input.type === 'text') {
        input.value = input.value.toUpperCase();
    }
}

jQuery を使用してもかまわない場合は、次のようなものが機能します。

$('input[type=text]').each(function () {
    $(this).val($(this).val().toUpperCase());
});
于 2012-08-23T09:45:11.920 に答える
1
$('input[type=text], textarea').each(function(index, value){
  $(this).val($(this).val().toUpperCase();
});
于 2012-08-23T09:37:12.940 に答える
0

探している場合は、純粋な JavaScript ソリューション

<input type="text" />
<input type="text" />
<input type="text" />
<input type="text" />
<input type="text" />
<input type="text" />
<input type="button" value="Make BIG" onclick="makeBig()" />

<script type="text/javascript" language="javascript">
  function makeBig() {
      var inputs = document.getElementsByTagName("INPUT");
      for (i = 0; i < inputs.length; i++) {
           if (inputs[i].type.toLowerCase() == 'text')
               inputs[i].value = inputs[i].value.toUpperCase();
       }
   }
</script>
于 2012-08-23T09:44:10.550 に答える