删除或隐藏下拉列表中的一些值,该列表由使用JavaScript的存储过程填充
Delete or hide some values in drop down list which is populating by stored procedure using JavaScript?
我正在研究经典ASP和JavaScript。
我有两个下拉列表:Dropdownlist1
和Dropdownlist2
。在第一个下拉列表中显示公司列表,在第二个下拉列表显示部门。
当用户从第一个下拉列表中选择公司A时,它应该显示所有部门。
当用户从第一个下拉列表中选择公司B时,它应该在第二个下拉列表中将几个部门隐藏起来。
下拉列表由存储过程填充。
我该怎么做?
有两种方法:
您可以使用AJAX发出请求,通过传递第一个下拉列表的选择来获得第二个下拉列表中的选项(这是大多数人会做的)。在你的JS(未测试!)中,这看起来像这样
(编辑:忘了提到下面的例子使用jQuery)
$('select#company').on('change', function () {
$.ajax('/some-asp-file.asp', {
type: 'POST',
data: {
'Company': $('select#company').val()
},
success: $.proxy(function(data){
$('select#department').html(data);
}, this)
});
});
和/some-asp-file.asp
中类似的东西(也没有测试!)
<%
dim Company
dim Department, Departments
Company = trim(request.form("Company"))
if Company <> "" then
Departments = ' // -> Result Array from your SP here where you pass in "Company"
for each Department in Departments
%>
<option value="<%=Department%>"><%=Department%></option>
<%
next
else
%>
<option value="-1">-</option>
<%
end if
%>
或者(决策也取决于您拥有的数据量),您可以首先获取所有数据,并将其存储在JS对象中,然后在客户端替换它。对于ASP等中所有的双引号转义的代码来说,这可能更令人沮丧,但如果你坚持的话,我可以给你写一个快速的例子。
相关文章:
- 由vbscript下拉列表填充的经典asp-javascript数组
- JQuery以基于另一个选择列表填充选择列表
- 使用 ajax 和 JSP Servlet 根据选择的上一个下拉列表填充下拉列表
- 根据 Wordpress 页面中的第一个下拉列表填充第二个下拉列表
- 用下拉列表填充数字数组
- 从 XML 列表填充的 ASP 下拉列表如何添加工具提示
- 根据选择的其他下拉列表填充一个下拉列表
- 用如何刷新列表填充 jquery 页面
- 动态创建选择元素并从 SharePoint 列表填充选项
- 用值列表填充文本框的最佳方法是使用java脚本或jquery双击
- 用多个列表填充jquery select下拉表单
- 根据下拉列表填充和禁用文本字段
- 用下拉列表填充HTML页面
- Javascript将列表填充到html中,选择重复列表两次
- 如何使用下拉列表填充文本框
- 根据上一个下拉列表填充下拉列表
- js:从列表填充关联
- 使用已填充下拉列表填充文本框
- 用java中Action的对象列表填充jqgrid中的表
- 如何将活动目录中的电子邮件组列表填充到数组中