我有这个脚本
<script>
function trigger(){
var x = document.getElementById('xcoord');
var y = document.getElementById('ycoord');
var box = document.getElementById('touch');
if (x.value >= 325 || x.value <= 300 && y.value >= 55 || y.value <= 25) {
$('#touch').value('passed');
}
}
</script>
这是html
<input onchange="trigger()" required type="number" id="xcoord" name="xcoord">
<input onchange="trigger()" required type="number" id="ycoord" name="ycoord">
<input required type="text" id="touch" name="touch">
我需要在每次 xcoord 和 ycoord 的值符合条件时显示一个值,但即使条件为真也不会打印任何值。
最佳答案
您混合了 JavaScript
和 JQuery
。
用JavaScript给输入框赋值
box.value = 'passed';
代码片段
function trigger(){
var x = document.getElementById('xcoord');
var y = document.getElementById('ycoord');
var box = document.getElementById('touch');
if (x.value >= 325 || x.value <= 300 && y.value >= 55 || y.value <= 25) {
box.value = 'passed';
}
}
<input onchange="trigger()" required type="number" id="xcoord" name="xcoord">
<input onchange="trigger()" required type="number" id="ycoord" name="ycoord">
<input required type="text" id="touch" name="touch">
用JQuery给输入框赋值
$('#touch').val('passed'); //Although you already have the box variable
代码片段
function trigger(){
var x = document.getElementById('xcoord');
var y = document.getElementById('ycoord');
var box = document.getElementById('touch');
if (x.value >= 325 || x.value <= 300 && y.value >= 55 || y.value <= 25) {
$('#touch').val('passed');
}
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input onchange="trigger()" required type="number" id="xcoord" name="xcoord">
<input onchange="trigger()" required type="number" id="ycoord" name="ycoord">
<input required type="text" id="touch" name="touch">
tl;dr;
由于您使用纯 JavaScript
开始编写代码,因此您混淆了如何使用 jQuery
语法更改值。
JavaScript box.value = 'passed';
jQuery $('#touch').val('passed');
关于javascript - jquery 将值放入输入框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48260853/