在我的控制器中,我有這個類別列表要顯示在我的視圖中。這是我申請的報告部分。根據所選下拉菜單顯示下拉列表
public SelectList getFields()
{
List<SelectListItem> field = new List<SelectListItem>();
field.Add(new SelectListItem { Text = "Department", Value = "dept" });
field.Add(new SelectListItem { Text = "Referrer", Value = "ref" });
field.Add(new SelectListItem { Text = "Monthly", Value = "cd_key" });
return new SelectList(field, "Value", "Text");
}
public ActionResult HR_RecRep()
{
ViewBag.fields = getFields();
return View();
}
然後在我的視野:
<script type="text/javascript">
$(document).ready(function() {
//this function will call the views with id=category
$('#fields').change(function() {
//Get the selected value from the dropdownlist
var rep = $(this).val();
//alert(cat);
if (rep.toUpperCase() == "DEPT") {
var text = document.getElementById("dept");
text.style.display = "inline";
$.getJSON('/Reports/getDepartment/', function (data) {
var items = '<option>Select Department...</option>';
$.each(data, function (i, department) {
items += "<option value='" + department.Value + "'>" + department.Text + "</option>";
});
$('#department').html(items);
});
var textValue = document.getElementById("ref");
textValue.style.display = "none";
}
});
});
</script>
<div style="border:0px solid black;width:950px;">
Reports By: @Html.DropDownList("fields", String.Empty)
<span id="dept" style="display:none;"><select id="department" name="department"></select></span>
<span id="ref" style="display:none;"><select id="referrer" name="referrer"></select></span>
在我看來,它成功地顯示在報告中的字段按款。 我希望每當我在類別中引用Department的下拉列表中選擇「dept」時,它應該顯示數據庫中所有部門的下拉列表。
這裏是我的控制器獲取部門名單。
public SelectList getDepartment()
{
ViewBag.department = new SelectList(db.rms_departments, "dept_id", "dept_shortname");
return ViewBag;
}
當我嘗試使用代碼時,在報告中選擇部門時,它不顯示部門的下拉列表。同樣,對於推薦人,當我從下拉菜單中選擇它時,它應該顯示數據庫中所有員工的下拉菜單。
你能幫我嗎? 非常感謝。
也許這與我的腳本有關?
我已經修改了我的控制器,但仍未顯示任何內容。有什麼與我的腳本?我不確定。 – Isay
是的,你必須更新腳本以及我的編輯帖子 –