在页面上的所有文本框前面添加一个$符号

时间:2014-05-10 23:19:32

标签: javascript

我有一个页面,在不同的文本框中显示很多值。但是现在我想编写一个javascript,在所有文本框的前面添加一个$ sign。这就是我的想法

function addDollarSign() {
   var inputValue = document.getElementById("textBoxName").value;

   if (myValue.indexOf("$") != 0)
   {
      inputValue = "$" + inputValue;
   }

   document.getElementById("textBoxName").value = inputValue;
}

然而,这仅适用于1个特定情况。 但是如何在页面上的每个文本框中添加$符号而不必不断地复制相同的代码

3 个答案:

答案 0 :(得分:2)

你可以通过它们循环:

var inputElementList = document.getElementsByTagName('input');
for (var i = 0; i < inputElementList.length; i++) {
    var currentElement = inputElementsList[i];
    currentElement.value = '$' + currentElement.value;
}

答案 1 :(得分:1)

对于您当前的要求,最好在服务器端添加“$”符号。

无论如何这里是一个在文本框中添加“$”符号的脚本

document.getElementsByTagName('input') will return you a NodeList. 

所以你必须迭代它才能添加“$”符号。

var inputNodeList= document.getElementsByTagName('input');
for (var element in inputNodeList) {
    var inputElement = inputNodeList[element];
    inputElement.value = '$' + inputElement.value;
}

答案 2 :(得分:0)

我对你的代码理解没有什么问题,但解决方案听起来与for循环的代码。

for(int i = 0, i <document.length, i++){

     var inputValue = document.getElementById("textBoxName").value;

       if (myValue.indexOf("$") != 0)
       {
          inputValue = "$" + inputValue;
       }
    }