基于javascript从数据库中获取值
我有一个文件,我们有一个网络表单要提交。此表格中有4到5个DropDow。其中三个相互依赖。当从第一个下拉列表中选择一个值时,会有一个函数触发一个函数document.formName.submit,它刷新整个页面,执行mySql查询,并为下一个字段获取一个新值,依此类推。我不想刷新。我可以在不刷新页面的情况下执行此过程,并从数据库中获取a值 下面是代码的一部分基于javascript从数据库中获取值,javascript,php,jquery,mysql,Javascript,Php,Jquery,Mysql,我有一个文件,我们有一个网络表单要提交。此表格中有4到5个DropDow。其中三个相互依赖。当从第一个下拉列表中选择一个值时,会有一个函数触发一个函数document.formName.submit,它刷新整个页面,执行mySql查询,并为下一个字段获取一个新值,依此类推。我不想刷新。我可以在不刷新页面的情况下执行此过程,并从数据库中获取a值 下面是代码的一部分 <div class="ca-box"> <div class="bold child1">C
<div class="ca-box">
<div class="bold child1">Country<span class="validation"> *</span></div>
<div class="child2">
<select id="cid" name="cid" onchange="javascript:submit_form() ;">
<?
$query = "SELECT * FROM country";
$result = $DB->DB_Query($query);
?>
<option value="">- Select Country -</option>
<?
for($i = 0; $i < count($result); $i++){
if ($cid == $result[$i]['cid']) {
echo "<option value=\"".$result[$i]['cid']."\" selected=\"selected\">".$result[$i]['country']."</option>";
} else {
echo "<option value=\"".$result[$i]['cid']."\" >".$result[$i]['country']."</option>";
}
} ?>
</select>
</div>
</div>
<div class="ca-box">
<div class="bold child1">Region<span class="validation"> *</span></div>
<div class="child2">
<? echo $_POST['cid']." ==="?>
<select id="rid" name="rid" onchange="javascript:submit_form2();">
<?
$query = "SELECT * FROM region where cid=".$cid;
$result = $DB->DB_Query($query);
?>
<option value="">- Select Region -</option>
<?
for($i = 0; $i < count($result); $i++){
if ($rid == $result[$i]['rid']) {
echo "<option value=\"".$result[$i]['rid']."\" selected=\"selected\">".$result[$i]['region']."</option>";
} else {
echo "<option value=\"".$result[$i]['rid']."\" >".$result[$i]['region']."</option>";
}
} ?>
<option value="Other">Other</option>
</select>
</div>
</div>
<div class="ca-box">
<div class="bold child1">City<span class="validation"> *</span></div>
<div class="child2">
<select id="ccid" name="ccid">
<?
$query = "SELECT * FROM city where rid =".$rid;
$result = $DB->DB_Query($query);
?>
<option value="">- Select City -</option>
<?
for($i = 0; $i < count($result); $i++){
if ($ccid == $result[$i]['ccid']) {
echo "<option value=\"".$result[$i]['ccid']."\" selected=\"selected\">".$result[$i]['city']."</option>";
} else {
echo "<option value=\"".$result[$i]['ccid']."\" >".$result[$i]['city']."</option>";
}
} ?>
<option value="Other">Other</option>
</select>
</div>
</div>
<script type="text/javascript">
function submit_form(location) {
//document.formName.type.value="location";
//document.formName.action = document.formName.action + "#" + location
document.formName.ccid.value = "";
document.formName.rid.value = "";
document.formName.submit();
return true;
}
function submit_form2(location) {
//document.formName.type.value="location";
//document.formName.action = document.formName.action + "#" + location
document.formName.ccid.value = "";
document.formName.submit();
return true;
}
</script>
我建议使用jQuery进行AJAX调用,因为jQuery团队为您简化了过程 我建议在jQueryAjax和php上进行搜索,从mysql数据库中获取数据。您将发现许多资源演示如何获取您试图获取的那些值 另外,不要使用document.formName.submit检索值。Javascript是一种客户端语言,它应该能够使用AJAX检索信息,而无需提交或刷新页面 有关问题: 有关jQuery AJAX调用的更多文档,请参见:
祝你好运。编写js,这样就不需要db查询了。使用Jquery Ajax并根据选择填写下拉列表。您可以使用下拉列表的onchange事件调用ajax函数并绑定新的下拉列表。是的,在提交时返回false并使用ajax请求获取数据。我已经尝试过了,但当我使用submit方法时,它会刷新整个页面。是否显示一些代码?