¿Cómo cargo correctamente un cierto valor en un cuadro de texto usando jquery? Probé el siguiente, pero obtengo el [object Object]
resultado. Por favor, infórmeme sobre esto, soy nuevo en 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>
javascript
jquery
Wern Ancheta
fuente
fuente
Respuestas:
Creo que desea establecer la respuesta de la llamada a la URL
'compz.php?prodid=' + x + '&qbuys=' + y
como valor del cuadro de texto, ¿verdad? Si es así, tienes que hacer algo como:Referencia:
get()
Tienes dos errores en tu código:
load()
coloca el HTML devuelto por Ajax en el elemento especificado:No puede establecer el valor de un cuadro de texto con ese método.
$(selector).load()
devuelve el objeto a jQuery . De forma predeterminada, un objeto se convierte en[object Object]
cuando se trata como una cadena.Aclaración adicional :
Suponiendo que su URL regrese
5
.Si su HTML se parece a:
entonces el resultado de
estarán
Pero en su código, tiene un elemento de entrada. Teóricamente (no es HTML válido y no funciona como notó), una llamada equivalente daría como resultado
Pero realmente necesitas
Por lo tanto, no puede usar
load()
. Tienes que usar otro método, obtener la respuesta y establecerla como valor tú mismo.fuente
$('#subtotal').val(str3);
porqueload()
no funciona como pensaba. Sí, puede utilizarload()
para cargar texto o HTML en undiv
valor de cuadro de texto pero no como.data = data.replace(/\s+/, '');
Tenga en cuenta que el
.value
atributo es una función de JavaScript. Si desea usar jQuery, use:para obtener el valor y:
para configurarlo.
http://api.jquery.com/val/
Con respecto a su segundo problema, nunca he intentado configurar automáticamente el valor HTML con el
load
método. Seguro que puedes hacer algo como esto:Tenga en cuenta que el código anterior no está probado.
http://api.jquery.com/load/
fuente
val()
para fines de referencia.Me gustaría señalarle que .val () también funciona con selecciones para seleccionar el valor seleccionado actual.
fuente
tratar
Mostrar fragmento de código
fuente