我想根据在下拉列表中选择的特定选项从数据库中填充文本字段。例如,下拉菜单包含文章的标题,当我选择或单击某些文章时,例如“科学”,那么数据库中针对科学的内容应以表格形式显示在文本区域中......请......任何事情都会受到赞赏:)
问问题
3232 次
2 回答
2
这是一个使用 ajax 检索信息的工作示例:(这使用 jQuery)
<!DOCTYPE HTML>
<html>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
</head>
<body>
<div>
<select id="myselect">
<option>---</option>
<option>Milk</option>
<option>Coffee</option>
<option>Tea</option>
</select>
</div>
<div>
<textarea id="result"></textarea>
</div>
<script>
$(document).ready(function()
{
$('#myselect').change(function()
{
var selected = $(this).find(':selected').html();
$.post('http://localhost/tests/ajax.php', {'beverage': selected}, function(data) {
$('#result').html(data);
});
});
});
</script>
</body>
</html>
这是您的 ajax.php 文件(更改代码以从数据库中检索信息)。
if (isset($_POST['beverage']))
{
switch($_POST['beverage'])
{
case 'Milk':
print 'Milk makes you grow!';
break;
case 'Coffee':
print 'Coffee does not let you sleep!';
break;
case 'Tea':
print 'Tea comes from China!';
break;
default:
print 'Nothing was selected';
break;
}
}
于 2012-07-31T17:28:22.587 回答
1
两种方法来完成它:
首先,没有 ajax 方式的 PHP:应该有两个表单 ..一个第一个下拉列表包含从 db 预填充的数据...一旦用户提交此表单(即 javascript 提交或传统的提交按钮单击)该数据可以通过将 this 作为值传递来针对查询语句的内容进行评估...从 SELECT 语句返回的数据然后重新显示在同一页面上另一个表单的文本区域中。
其次,使用ajax来做POST,而不是使用双表单的方式,这样会更快更高效..
于 2012-07-31T17:08:26.070 回答