【发布时间】:2016-08-31 03:07:01
【问题描述】:
所以我正在 ASP.net 中处理一个项目,并且我创建了一个表单,该表单为用户提供了一个可供选择的下拉菜单。最重要的是,下面的 Jquery 允许用户添加额外的下拉字段。这行得通。 现在我的问题源于第一个下拉列表有一个机构列表,该列表工作正常,因为它是从 html 表单中的 C# 填充的。
当用户选择添加另一个下拉框时,该框只是空的。我尝试将 C# 直接添加到 Jquery 中,但这不起作用。
我对项目中使用的 ASP.net 或 MVC 没有过多的经验,将值传递到 Jquery 以便我可以将列表添加到下拉列表的最佳方法是什么?
下面是代码
<script>
$(document).ready(function () {
var max_fields = 10; //maximum input boxes allowed
var wrapper = $(".input_fields_wrap"); //Fields wrapper
var add_button = $(".add_field_button"); //Add button ID
var x = 1; //initlal text box count
$(add_button).click(function (e) { //on add input button click
e.preventDefault();
if (x < max_fields) { //max input box allowed
x++; //text box increment
$(wrapper).append('<div><select style="padding-left: 5px; width: 100%;" class="BasicInfoFormControl" onblur="" name="restrictedInstitute[]" /></select><a href="#" class="remove_field">Remove</a></div>'); //add input box
}
});
$(wrapper).on("click", ".remove_field", function (e) { //user click on remove text
e.preventDefault(); $(this).parent('div').remove(); x--;
})
});
</script>
这里是 HTML
<div class="col-md-3 BasicInfoFormLabelColumn">
<label for="restrictedInstitute" class="formLabel">Restricted Institutes: (Can't Apply)</label>
</div>
<div class="col-md-3 input_fields_wrap">
<select style="padding-left: 5px; width: 100%;" class="BasicInfoFormControl" onblur="" name="restrictedInstitute[]" id="selectRestricted" />
<option value="0">Please Select</option>
@foreach (var item in Model.institute)
{
if (@item.TradingName != null && @item.TradingName != " " && @item.TradingName != "")
{
<option value="@item.TradingName">@item.TradingName</option>
}
}
</select>
<div class="row">
<div class="col-md-12 BasicInfoFormRow ">
<button class="add_field_button addMore">+Add More institutes</button>
</div>
</div>
</div>
我添加了几张图片来帮助说明我想要做什么。
【问题讨论】:
-
当用户添加另一个下拉列表时,新的下拉列表是否与第一次填充的下拉列表具有相同的选项?
-
嗨,马克,应该是的,但目前它只是空白。
标签: javascript c# jquery asp.net razor