jquery - 为什么jquery无法访问html输入
问题描述
我很震惊,这里发生了什么,只是这里缺少的东西很简单。为什么 html 输入变量不能在 jquery 中访问,我尝试使用 id 选择器,name 属性。这真的很奇怪。
$(document).ready(function(){
var heading = $('#heading').val();
var heading1 = $('#heading').text();
var heading2 = $('input[name=heading]').val();
$('#submit').click(function(){
alert(heading);
alert(heading1);
alert(heading2);
})
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<html>
<head>
</head>
<body>
<form action="">
<table>
<tr>
<th>
Heading
</th>
<td>
<input type="text" name="heading" id="heading">
<input type="submit" id="submit" name="submit">
</td>
</tr>
</table>
</form>
</body>
</html>
解决方案
您需要在click
事件中获取值,也text()
不会获取输入值
$(document).ready(function() {
$('#submit').click(function() {
var heading = $('#heading').val();
var heading1 = $('#heading').text(); //this will not get the value
var heading2 = $('input[name=heading]').val(); // this will be the same as the heading var
alert(heading);
alert(heading1);
alert(heading2);
})
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<form action="">
<table>
<tr>
<th>
Heading
</th>
<td>
<input type="text" name="heading" id="heading">
<input type="submit" id="submit" name="submit">
</td>
</tr>
</table>
</form>
推荐阅读
- c - 如何通过引用将二维字符数组传递给另一个函数
- reactjs - '组件异常' React Native
- java - 为什么“test”类中的以下代码不会使用 static 关键字给出 stackoverflow 错误
- c++ - 在现有的 Visual Studio C++ 项目中使用 Tesseact OCR
- python - Python:使用 zeromq 流式传输音频和视频
- javascript - 如果满足条件,替换变量的最快方法是什么?
- python - Python覆盖嵌套函数中的数组
- mongodb - 更新或附加到 mongo 中的子集合
- ios - Xcode 12.3 无法在 iOS 14.3 上安装应用程序
- python - ValueError:Series 的真值不明确。将 a.empty、a.bool()、a.item()、a.any() 或 a.all() 用于 for 循环