use*_*409 8 jquery input textfield
我无法将文本框中用户键入的值捕获到变量中.
我不想使用<form>,有没有其他方法可以做到这一点?
<html>
<head>
<style>
p { color:blue; margin:8px; }
</style>
<script src="http://code.jquery.com/jquery-latest.js"></script>
</head>
<body>
<input type="text" id="txt_name" />
<script type="text/javascript">
value = $("#txt_name").val();
$("#dom_element").text(value);
</script>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
nnn*_*nnn 11
如果您想获得用户输入的值,那么您需要这样做以响应某种事件.当用户键入并释放密钥时,会发生密钥事件(信不信由你).如果您捕获键盘,您可以通过每次击键更新您的变量,但您应该捕获"更改"以允许粘贴和拖放不使用键盘的更改.当用户修改字段然后单击或标签时,会发生"更改"事件.
此外,目前您的value变量是全局变量,但如果您正在使用它是为了设置另一个字段的值,则根本不需要它:
$("#txt_name").on("keyup change", function() {
$("#dom_element").text(this.value);
});
// OR, if you need the variable for some other reason:
$("#txt_name").on("keyup change", function() {
var value = this.value; // omit "var" to make it global
$("#dom_element").text(value);
});
Run Code Online (Sandbox Code Playgroud)
请注意,在事件处理函数中,函数this将是dom元素,因此您可以并且应该在没有jQuery的情况下直接获取其值.
如果你使用旧版本的jQuery .bind()而不是.on().
| 归档时间: |
|
| 查看次数: |
69823 次 |
| 最近记录: |