我正在开发一个PHP Web应用程序,我有一个mySQL数据库。输入'name'并单击名为'select'的按钮后,我想找到'id'的最小值,并将该最小值放到名为“min”的文本框中。
到目前为止,这是我的代码。它完美无缺。
<html>
<head>
</head>
<body>
<?php
include('config.php');
$id='';
$query1='';
$name='';
if(isset($_POST['select']))
{
$name=$_POST['name'];
$query1=mysql_query("select MIN(id) as id1 from places where name='$name'");
while($query2=mysql_fetch_array($query1))
{
$id=$query2['id1'];
}
}
echo'<form method="post" >';
echo 'name<input type="text" name="name" value="' . $name . '">';
echo '<input type="submit" name="select" value="select"><br>';
echo '<input type="text" name="min" value="' . $id . '">';
echo'</form>';
?>
</body>
</html>
但是一旦点击按钮,它就会刷新页面。我想这样做而不刷新页面。我听说AJAX可以在不刷新页面的情况下做同样的事情。我试过了,但没办法。有谁可以帮我解决这个问题?
答案 0 :(得分:1)
试试这个
index.html代码
<script src="jquery-1.11.0.min.js" language="javascript"></script>
<form method="POST">
<input type="text" id="name" name="name">
<input type="text" name="min" id="min" value="">
<input type="submit" id="submit" value="select">
<script>
$('#submit').click(function (e){
e.preventDefault();
var $name=$('#name').val();
$.ajax({
type: "POST",
dataType: "json",
data: {"name": $name},
url: 'select.php',
success: function(data) {
$('#min').val(data.r_id);
}
});
});
</script>
和select.php在同一目录
<?php
include('config.php');
if($_POST)
{
$name=$_POST['name'];
$query1=mysql_query("select MIN(id) as id1 from places where name='$name'");
while($query2=mysql_fetch_array($query1))
{
$id=$query2['id1'];
}
$response=array(
'r_id'=>$id,
);
}
print json_encode($response);
?>