我是AJAX的新手,我在这个页面上找到了解决问题的代码,但我无法使其工作。
当我在选择#producto
中选择一个选项时,我需要改变输入#precio
。
我有这个代码:
<form action="actualizarprod_pr.php" method="post">
<input type="text" name="producto" value="" placeholder="Producto" list="productolist" />
<datalist id="productolist">
<select id="productos" style="display: none;">
<?php
$query = "SELECT * FROM lista_precios";
$query_ej = mysqli_query($conexion, $query);
while($registro = mysqli_fetch_array($query_ej)){
echo "<option value='" . $registro['producto'] .
"'</option>";
}
?>
</select>
</datalist>
<input type="text" id="precio" name="precio" placeholder="Precio">
<input type="submit" name="Actualizar" value="Actualizar">
<input type="submit" name="Borrar" value ="Borrar">
</form>
脚本:
<script type="text/javascript">
$(document).ready(function(){
$("#productos").change(function(){
var producto=$(this).val();
$.ajax({
type:"post",
url:"cargaselect.php",
data:"producto="+producto,
success:function(data){
$("#precio").val(data);
}
});
});
});
</script>
cargaselect.php:
<?php
session_start();
include("conexion.php");
if(isset($_SESSION["id_usuario"])){
$producto=$_POST["producto"];
$result = mysqli_query($conexion,
"select * FROM lista_precios WHERE producto =". $producto ." ");
echo $result[precio];
} else {
header("location: login.php");
}
?>
该行的格式不正确
echo $result[precio];
应该是
echo $result['precio'];
$result['precio']返回什么?如果它是一个您可能需要使用的结果数组$result[0]['precio']可能会替代