【发布时间】:2014-05-09 00:30:00
【问题描述】:
我有 3 个选择框。从第一个选择框的选择中,我得到了第二个选择框的选项。使用 jQuery Ajax 很容易做到这一点。但是在这第二个选择框更改后无法获取 Jquery ajax 输出,我必须将其放入第三个选择框。 我有以下三个选择框 1) 学院选择框 2) 课程类型选择框 3) 分支类型选择Box。
从大学选择框中,我选择一所大学,然后使用 Jquery:ajax 我得到课程类型选择框的课程类型选项。但是当我从课程类型中选择任何一个选项时,它就不起作用了。我正在使用 Php 进行 ajax。
我的代码如下:
<script>
$("#collegename").change(function() {
var collegeID = $("#collegename").val();
$.ajax({
url: "ajax/getCollegeBranchDetailsTotal.php",
type: "POST",
data: {ID : collegeID},
dataType: "json",
success: function(data){
if(data.success){
var outputHtml = '';
var SelectStart = '<select id="coursename" name="coursename"><option value=""> Select a Course </option>';
var SelectEnd = '</select>';
var options = '';
if(data.branchData){
$.each( data.branchData, function( course, branchdetails ) {
var optionParam = '<option value='+ data.courseData[course] +'> ' + course + '</option>';
options = options + optionParam;
});
}
outputHtml = SelectStart + options + SelectEnd;
$(".courseDiv").html(outputHtml);
}
}
});
});
$("#coursename").on('change', function() {
var collegeID = $("#collegename").val();
$.ajax({
url: "ajax/getCollegeBranchDetailsTotal.php",
type: "POST",
data: {ID : collegeID},
dataType: "json",
success: function(data){
if(data.success){
var outputHtml = '';
if(data.branchData){
var SelectStart = '<select id="branchname" name="branchname"><option value=""> Select a Branch </option>';
var SelectEnd = '</select>';
var options = '';
$.each( data.branchData, function( course, branchdetails ) {
$.each( branchdetails, function( id, name ) {
var optionParam = '<option value="'+ id +'"> ' + name + '</option>';
options = options + optionParam;
});
});
outputHtml = SelectStart + options + SelectEnd;
}
$(".branchNames").html(outputHtml);
}
}
});
});
</script>
<body>
<div class="block">
<div class="label">College Name:</div>
<div class="collegeDiv">
<select id="collegename" name="collegename" />
<option value=''> Select a College </option>
<?php
foreach ($collegeNames as $id => $values) {
print "<option value='$id'> " . $values["Name"] . "</option>";
}
?>
</select><br />
</div>
</div>
<div class="block">
<div class="label">Course Name: </div>
<div class="courseDiv">
<select id="coursename" name="coursename" />
<option value=''> Select a Course </option>
</select><br />
</div>
</div>
<div class="block">
<div class="label">Branch Name: </div>
<div class="branchNames">
<select id="branchname" name="branchname" />
<option value=""> Select a Branch </option>
</select><br />
</div>
</div>
</body>
【问题讨论】:
-
可以给jsfiddle吗?