如何使用 jQuery 将某个值正确加载到文本框中?尝试了下面的,但我得到了[object Object]
作为输出。请告诉我这一点,我是 jQuery 的新手。
proc = function(x, y) {
var str1 = $('#pid').value;
var str2 = $('#qtytobuy').value;
var str3 = $('#subtotal').load('compz.php?prodid=' + x + '&qbuys=' + y);
$('#subtotal').val(str3);
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<form name="yoh" method="get">
Product id: <input type="text" name="pid" value=""><br/>
Quantity to buy:<input type="text" name="qtytobuy" value="" onkeyup="proc(document.yoh.pid.value, this.value);"></br>
Subtotal:<input type="text" name="subtotal" id="subtotal" value=""></br>
<div id="compz"></div>
</form>
我想你想设置对 URL 的调用响应'compz.php?prodid=' + x + '&qbuys=' + y
作为文本框的值对吗?如果是这样,您必须执行以下操作:
$.get('compz.php?prodid=' + x + '&qbuys=' + y, function(data) {
$('#subtotal').val(data);
});
参考:get() http://api.jquery.com/jQuery.get/
您的代码中有两个错误:
进一步澄清:
假设您的 URL 返回5
.
如果您的 HTML 看起来像:
<div id="foo"></div>
那么结果是
$('#foo').load('/your/url');
will be
<div id="foo">5</div>
但在您的代码中,您有一个输入元素。理论上(它不是有效的 HTML 并且不能像您注意到的那样工作),等效的调用将导致
<input id="foo">5</input>
但你实际上需要
<input id="foo" value="5" />
因此,您不能使用load()
。您必须使用另一种方法,获取响应并将其设置为自己的值。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)