简体   繁体   English

jquery将值放到输入框中

[英]jquery put value to input box

I have this script 我有这个脚本


<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>

here is the html 这是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">

i need a value to be displayed everytime the value of the xcoord and ycoord suits the condition, but no value is printed even the condition is true. 每当xcoord和ycoord的值适合条件时,我需要显示一个值,但即使条件为真,也不会打印任何值。

You have mixed plain JavaScript with JQuery . 您有混合纯JavaScript使用JQuery

Put value to input box with JavaScript 使用JavaScript将值放入输入框

box.value = 'passed';

CodeSnippet CodeSnippet

 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"> 

Put value to input box with JQuery 使用JQuery将值放到输入框中

$('#touch').val('passed'); //Although you already have the box variable

CodeSnippet CodeSnippet

  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; TL;博士;

Since you started code with plain JavaScript you confused how to change the value with jQuery syntax. 由于您使用纯JavaScript启动代码,因此您混淆了如何使用jQuery语法更改值。

JavaScript box.value = 'passed'; JavaScript box.value = 'passed';

jQuery $('#touch').val('passed'); jQuery $('#touch').val('passed');

You are using the jQuery Library. 您正在使用jQuery库。 Use better than jQuery methods. 使用比jQuery方法更好。

 $("#xcoord , #ycoord").on("keyup", function(){ var x = $('#xcoord').val(); var y = $('#ycoord').val(); $('#touch').val((x >= 325 || x <= 300) && (y >= 55 || y <= 25)?'passed':''); } ); 
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <input required type="number" id="xcoord" name="xcoord" value="0"> <input required type="number" id="ycoord" name="ycoord" value="0"> <input required type="text" id="touch" name="touch"> 

它应该是

 $('#touch').val('passed');

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM