Javascript 为什么我的输入框';s值为';你没有被退回吗?

Javascript 为什么我的输入框';s值为';你没有被退回吗?,javascript,jquery,html,twitter-bootstrap,Javascript,Jquery,Html,Twitter Bootstrap,使用twitter引导,我创建了一个按钮,旁边有一个输入框。然后,我尝试使用jQuery访问视图中的值,但由于某些原因,除了“未定义”之外,我无法返回任何内容。这是我的密码: jQuery: var browserInput = $("#browserInput").val(); console.log(browserInput); Html: 添加 我将取消删除我的答案,因为它显然帮助海报解决了他的问题 <input id="browserInput" type="text" val

使用twitter引导,我创建了一个按钮,旁边有一个输入框。然后,我尝试使用jQuery访问视图中的值,但由于某些原因,除了“未定义”之外,我无法返回任何内容。这是我的密码:

jQuery:

var browserInput = $("#browserInput").val();
console.log(browserInput);
Html:


添加

我将取消删除我的答案,因为它显然帮助海报解决了他的问题

<input id="browserInput" type="text" value="" class="form-control" style="display: none;" />

似乎在
标签中有
值=“
”对他来说有了不同


我想知道他是指
而不是
未定义的

如果这是您实际的代码布局,您将无法获得值,因为在您请求值时没有加载DOM

您应该尝试将您的函数包装在DocumentReady中

$(document).ready(function() {
  var browserInput = $("#browserInput").val();
  console.log(browserInput);
});
如果您想在keyup或与输入框交互时获得值,您也可以这样做

$(document).ready(function() {
 $('#browserInput').on('keyup',function() {
  var browserInput = $("#browserInput").val();
  console.log(browserInput);
});
});

它有价值吗?您何时调用此代码?您的输入设置为不显示。其中没有默认值(可以使用
value=''
设置一个)。您没有执行javascript代码的上下文。它是在页面加载之前启动的吗?还是绑定到某个提交按钮上?我第一次调用它时,没有包含任何值,它只“取消隐藏”输入框。然后第二次调用它时插入了一个值。
除了“undefined”(未定义)之外,我无法返回任何内容。
表示
$(“#browserInput”)
返回空值object@chadb768
我丢失了默认值设置器
这是怎么回事?我也不知道为什么会这样。我不必在任何其他输入框中使用value=“”,但我想如果它现在起作用,我也不会抱怨!
$(document).ready(function() {
 $('#browserInput').on('keyup',function() {
  var browserInput = $("#browserInput").val();
  console.log(browserInput);
});
});