当用户输入字段的名称/ ID时获取文本框的值

时间:2018-04-12 21:53:22

标签: javascript jquery

使用jquery获取文本框的值。

BUT

我需要输入文本框的id,然后使用该值来使用jquery获取文本框的值。

var tt = $("#fieldname").val()

有效

现在如何在运行时输入fieldname,并获取jquery来执行val命令,好像它是硬编码的一样?

2 个答案:

答案 0 :(得分:2)

有几种方法可以做到这一点。一种方法是在输入id的文本框中收听键盘之一或更改事件,以帮助确定输入何时发生变化。例如,

$("#inputText").on("keyup", function(keyupEvent){ var textboxId = $("#inputText").val(); var textboxIdValue = $("#" + textboxId).val(); });

或者另一种方法是使用具有类似逻辑的点击事件,例如

$("#clickMe").on("click", function(){ var textboxId = $("#inputText").val(); var textboxIdValue = $("#" + textboxId).val(); })

这里可以看到两者用例的示例https://fiddle.jshell.net/xpvt214o/114584/

答案 1 :(得分:0)

以下是您开始使用的示例:

<body>
  <p>Type "one" or "two" below</p>
  <input id="search" />
  <input id="one" value="This input is #one" />
  <input id="two" value="And this is #two" />
  <p id="result">No input specified</p>
</body>

以及相应的jQuery代码:

// Cache jQuery elements for performance and readability
var $search = $("#search");
var $result = $("#result");

$search.on("change", function() {
  var search_value = $search.val();
  if (search_value.length) {
    search_value = "#" + search_value.toLowerCase().trim(); // Sanitise user input
    if ($(search_value).length) {
      $result.text($(search_value).val());
    } else {
      $result.text("Input not found");
    }
  } else {
    $result.text("No input specified");
  }
});

这将显示指定输入的值(如果存在)。

您可以在此处看到它:https://jsfiddle.net/jeevantakhar/xpvt214o/114558/