我正在尝试使用下拉列表;当您从列表中选择option
时,它会触发一个函数来加载页面上的内容。
基本上我有一个变量$div_id
,它是每个分区的数字。
我想要做的是下拉的“选择”部分;有on change
触发函数,$div_id
作为函数的输入。
下拉列表的选项是从数据库中提取的。
所以这不起作用;我认为问题是此代码中的第二行,<select>
标记。它正在触发功能 - 但它没有从选项中获得输入; (选择它时每个option
应该向函数发送不同的div_id
但不知怎的,我认为我做错了,我没有正确编码,所以div_id
可以正确输入到函数中。
这是我的代码:
<form>
<select name="div_id" id="div_id" onchange="MyRadFunction('div_id')">
<?php
$sql = "SELECT * FROM divisions";
foreach ($dbh->query($sql) as $resultsg1)
{
$div_id = $resultsg1[div_id];
$div_name = $resultsg1[div_name];
?>
<option value="<?php echo $div_id; ?>" >
<?php echo $div_name; ?></option>
<?php
}
?>
</select>
</form>
<!-- *********** added function -->
<script>
function MyRadFunction(DivId) {
var answer = DivId;
$.ajax({
cache: false,
type: 'GET',
url: 'mysite.com/gscript5_links.php',
data: 'answer=' + answer,
dataType: 'html',
success: function(response) {
$('#ajax_content').html(response);
}
});
}
****************更新时间:10/17美国东部时间下午2:06 ****************** 为了解决这个问题(在Regent的帮助下)我必须基本上摆脱我所拥有的一切,从一开始就开始,然后一次又一次地添加一些东西以使这一切全部起作用;我确信这不是最优雅的代码,但这里的代码是有用的:
<select id="comboA" onchange="G_function1(this)">
<?php
$sql = "SELECT * FROM divisions";
foreach ($dbh->query($sql) as $resultsg1)
{
$div_id = $resultsg1[div_id];
$div_name = $resultsg1[div_name];
?>
<option value="<?php echo $div_id; ?>" >
<?php echo $div_name; ?></option>
<?php } ?>
</select>
<script>
function G_function1(sel) {
var value = sel.value;
var answer = value;
$.ajax({
cache: false,
type: 'GET',
url: 'http://jba.gtdsites.com/gscript5_links.php',
data: 'answer=' + answer,
dataType: 'html',
success: function(response) {
$('#ajax_content').html(response);
}
});
}
</script>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
<link rel="stylesheet" href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.10.4/themes/smoothness/jquery-ui.css" />
<script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.10.4/jquery-ui.min.js"> </script>
<div id="ajax_content" id="id57512">
</div>