<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<script src="jquery-3.4.1.min.js" type="text/javascript" charset="utf-8"></script>
</head>
<body>
<input id="keyword" type="text" value="">
<div id="contain">
<ul id="list"></ul>
</div>
<script type="text/javascript">
$(function(){
let i =$("#keyword").val();
console.log(i);
})
</script>
</body>
</html>
<script>
$('#search-box').on('input', function() {
var searchValue = $(this).val();
$.ajax({
url: 'data.json',
dataType: 'json',
success: function(data) {
console.log(searchValue);
}
});
});
</script>
其实是有获取到的,你给的初始值是空,所以获取到的是空值。而且你的代码逻辑跟下面那段代码也不同。你的是网页加载后立刻获取输入框的值(并且只执行一次),而下面那段代码是给输入框绑定一个input事件,只要输入框的内容发生变化就会执行回调函数
html代码
<input type="text" name="raise" class='raise'>
<button type="primary" class="raiseBtn">提问</button>
js代码
$('.raiseBtn').click(()=>{
let raise = $(".raise").val()
console.log(raise)
})