PHP/JS:动态Dropboxes和回显SELECTED值
PHP/JS: Dynamic Dropboxes and echoing SELECTED value
我目前使用的是动态下拉菜单(可靠的选择框)。我直接从MySQL数据库中提取值(如果你好奇的话,这里是我如何设置数据库的)。我能够获得每个表的值并相应地显示它们。我遇到的问题是回显每个selct框的SELECTED值。我创建了一个JS函数,它将请求postfile.php,然后它将回显每个框的SELECTED值。我没有得到任何回应。我已经和firebug核实过了,但没有任何消息发布。
我怎样才能做到这一点?还是我处理这件事错了?或者有更好的方法吗?示例
使用HTML/PHP
<?php
include ('includes/dbConnect.php');
try {
$pdo = get_database_connection();
$sql = "SELECT *
FROM `categories`
WHERE `master_id` = 0";
$statement = $pdo->query($sql);
$list = $statement->fetchAll(PDO::FETCH_ASSOC);
} catch(PDOException $e) {
echo 'There was a problem';
}
?>
<select name="main" id="main" size="7" class="update">
<option value="">Select one</option>
<?php if (!empty($list)) { ?>
<?php foreach($list as $row) { ?>
<option value="<?php echo $row['id']; ?>">
<?php echo $row['name']; ?>
</option>
<?php } ?>
<?php } ?>
</select>
<select name="subc1" id="subc1" size="7" class="update" disabled="disabled" hidden="hidden">
<option value="">----</option>
</select>
<select name="subc2" id="subc2" size="7" class="update" disabled="disabled" hidden="hidden">
<option value="">----</option>
</select>
<select name="subc3" id="subc3" size="7" class="update" disabled="disabled" hidden="hidden">
<option value="">----</option>
</select>
JS
<script type="text/javascript">
$(document).ready(function () {
$('#main).change(function() {
if ($(this).val()!='
') {
$("#subc1").load("postfile.php",{main_id: $(this).val()});
//$("#subc1").removeAttr('
disabled hidden ');
}
});
//code on change of sel_source
$('#subc1 ').change(function() {
if ($(this).val()!='
') {
$("#subc2").load("postfile.php",{subc1_id: $(this).val()});
//$("#colour").removeAttr('
disabled ');
}
});
$('#subc2 ').change(function() {
if ($(this).val()!='
') {
$("#subc3").load("postfile.php",{subc2_id: $(this).val()});
//$("#colour").removeAttr('
disabled ');
}
});
});
</script>
PHP-postfile.PHP
if(isset($_REQUEST['main_id']) && !empty($_REQUEST['main_id'])) {
try {
include ('../includes/dbConnect.php');
$pdo = get_database_connection();
$sql = ("select * from `categories` where id='".$_REQUEST['main_id']."' ");
$result = $con->prepare($sql);
$result->execute();
$number_of_rows = $result->fetchColumn();
}catch(PDOException $e) {
echo 'There was a problem';
}
if($number_of_rows > 0) {
$output = '<option value="">Select</option>';
while($row = mysql_fetch_assoc($result)) {
$output .= '<option value="'.$row['id'].'">'.$row['name'].'</option>';
}
} else {
$output = '<option value="">Select</option>';
}
echo $output;
}
if(isset($_REQUEST['subc1_id']) && !empty($_REQUEST['subc1_id'])) {
$result = mysql_query("select * from table where id='".$_REQUEST['subc1_id']."' ");
if($number_of_rows > 0) {
$output = '<option value="">Select</option>';
while($row = mysql_fetch_assoc($result)) {
$output .= '<option value="'.$row['id'].'">'.$row['name'].'</option>';
}
} else {
$output = '<option value="">Select</option>';
}
echo $output;
}
if(isset($_REQUEST['subc2_id']) && !empty($_REQUEST['subc2_id'])) {
$result = mysql_query("select * from table where id='".$_REQUEST['subc2_id']."' ");
if($number_of_rows > 0) {
$output = '<option value="">Select</option>';
while($row = mysql_fetch_assoc($result)) {
$output .= '<option value="'.$row['id'].'">'.$row['name'].'</option>';
}
} else {
$output = '<option value="">Select</option>';
}
echo $output;
}
也许您想使用jQuery UI自动完成。它更易于使用,代码更少。它还有一个远程数据源。试试这个,也许可以解决你的问题。http://jqueryui.com/demos/autocomplete/
向表单添加提交操作。在函数中使用以下内容:
var Myvar = $('#subc3 :selected').text();
相关文章:
- 如何设置Dojo表单中的selected选项
- Jquery Selected plugin - 由 Ajax 动态填充列表
- Angularjs ng-options selected value of dropdownlist
- 选择/选项 ng-model 未绑定 ng-selected
- 在应用 jQuery.Selected 时,使用 jQuery.Validate 来验证选择字段时,暴露错误
- 如何使我的.selected类在hrefs列表中重新加载后保持在正确的a(href)上
- Jquery-使用HTML:selected来获取具有相同名称的数组
- `object:selected`事件触发两次
- jQueryMobile-如果输入是selected,则固定的标头会更改大小
- 在HTML下载列表中获取一个带有Selected Option的var到Google Script Spreadshee
- PHP/JS:动态Dropboxes和回显SELECTED值
- jQuery selected select防止隐藏select
- 我想将多选与引导一起使用,也称为 Selected
- 使用 JQuery 从列表中查找 a:selected 元素
- 在 JavaScript 中将单选按钮替换为“selected”
- JQuery change selected="true" on select - angularj
- 如何查看使用 d.selected 选择了哪些节点?D3/JS.
- 获取刚刚从 jQuery Selected 多选元素中选择的值
- Angular Selected - a.forEach 不是一个函数
- Div selected-未读消息-阅读类似facebook收件箱的消息