2011-10-16 34 views
1

我可以更改input.value的值嗎?如何更改input.value返回的內容?

例如:

<input type="text" value="a" id="i" /> 

var input = document.getElementById("i"); 
input.value; // I want this to return double of input.value, that is "aa" in this case. 

這可能嗎?

回答

5

你可以使用一個字符串連接:

var input = document.getElementById("i"); 
var result = input.value + input.value; 
+1

只是打敗了我,這是一個工作的例子:http://jsfiddle.net/K3A9K/9/ –

+0

不,這不是我喜歡的......我只是想用' var result = input.value;'和'result'是「aa」 – wong2

+0

這可能嗎? – wong2

2

可以達到最好的就是通過添加自己的方法「擴展」通用HTML輸入元素:

HTMLInputElement.prototype.MyValue = function() { 
    return this.value + this.value; 
}; 

然後調用它,而不是.value屬性:

var input = document.getElementById("i"); 
alert(input.MyValue()); 

Live test case - WOR王在所有主流瀏覽器的最新版本。 (Chrome,Firefox,IE)