更改文本框Javascript的单个值

时间:2014-11-28 17:54:21

标签: javascript input modifier

我想只改变输入的一个值,例如:在输入收入“xy”中我想改变只是“和”假设一个新值是“p”,而“x”离开。最终结果应为“xp”。

http://s2.subirimagenes.com/privadas/previo/thump_2265651input.png http://s2.subirimagenes.com/privadas/previo/thump_2265653input2.png

<input type="text"id="txtChar1" onkeypress="isNumberKey();">

function isNumberKey()
{
  var text = document.getElementById(txtChar1).value;

  if (text[1] >= 0)
  {
    text[1].write("p");
    text[1].value ="p";
    text.charAt(1).value = "p";
    text[1].innerHTML = "p";
    text[1] = "p";
  }
}

忘记澄清在这种情况下存在的选项是那些探测并且没有行走的选项。

1 个答案:

答案 0 :(得分:1)

字符串是不可变的。你的描述不清楚,但我能说的最好的是你想要颠倒字符的顺序。

function isNumberKey()
{
  var el = document.getElementById("txtChar1");
  el.value = el.value.split("").reverse().join("");
}

.split("")将字符串转换为字符数组。然后.reverse()反转这些数组成员的顺序,.join("")将成员连接回字符串。


另一种方法是将this传递给函数,因为那是更新的。

<input type="text"id="txtChar1" onkeypress="isNumberKey(this);">

function isNumberKey(el)
{
  el.value = el.value.split("").reverse().join("");
}

我不会详细说明你的代码出了什么问题,因为我认为你只是把一堆任意的代码放在一起,希望它可以工作。不用说,这几乎都是错的。