通过Javascript了解最后点击的文本框

时间:2010-11-05 13:09:02

标签: javascript forms

我有一个表格和一个按钮。

当我点击文本字段,然后点击此特定按钮时,我需要这样,最后点击的文本框将更改其值以显示“按钮已被点击”。

有没有办法通过JavaScript我怎么知道被点击的最后一个文本框?

非常感谢提前。

2 个答案:

答案 0 :(得分:2)

单击时,需要存储对文本框的引用。最简单的方法是为引用创建一个全局变量。然后,您将使用文本框的onclick事件更新引用。这是一个例子:

HTML:

<input id="myTextBox" type="text" onclick="updateCurText(this);">
<input type="button" value="click me" onclick="updateText();">

JavaScript的:

var currentTextBox = '';

function updateCurText(ele) {
  currentTextBox = ele.id;
}

function updateText() {
  document.getElementById(currentTextBox).value = 'BUTTON HAS BEEN CLICKED';
}

Live example.

答案 1 :(得分:0)

jsumners是正确的,但是我可能会建议避免使用全局变量,如果你使用像jQuery这样的东西,你就会在一个文件中封装很多逻辑:

$(function() {
  var lastBox = false, formSelector = "form.myClass";
  // Change events
  $(formSelector + " input[type='text']").click(function() {
    lastBox = this;
  });
  // Button click
  $(formSelector + " button").click(function() {
    if (lastBox)
      $(lastBox).val("BUTTON HAS BEEN CLICKED");
  });
});

live