这是代码:
<input type="text" id="name" />
<script>
var name = $("#name").val();
</script>
页面加载后,我在输入框中输入值。这是我在值后在 chrome 控制台中输入的内容
console.log(name);
我得到空字符串
这是代码:
<input type="text" id="name" />
<script>
var name = $("#name").val();
</script>
页面加载后,我在输入框中输入值。这是我在值后在 chrome 控制台中输入的内容
console.log(name);
我得到空字符串
利用:
<input type="text" id="name" />
<script>
$(document).on('keyup', '#name', function(){
name = $(this).val();
});
</script>
这将仅在输入值后将值分配#name
给变量。name
您需要$("#name").val()
在键入后调用,否则它将在页面加载时加载,并且您会得到一个空字符串,因为此时输入为空。
这行不通,因为 Chrome 控制台不知道您的 JavaScript 值是什么,它们的范围不是全局的。您需要在脚本标签中写入您的 console.log(name),或者在控制台(和分配)中声明您的 name 变量并记录它。