如何创建多个下拉菜单,调用不同的存储过程,并将前一个下拉菜单选择作为参数

How to create multiple dropdowns that call different stored procedures with it's previous dropdown selection as an argument?

本文关键字:下拉菜单 一个 选择 参数 创建 何创建 调用 存储过程      更新时间:2023-09-26

我有4个下拉列表。每个下拉菜单都"依赖"于它上面的那个。例如,当用户从Dropdown a中进行选择时,Dropdown B需要调用一个存储过程,并根据在Dropdown a中选择的内容对其选择选项进行筛选。下拉菜单C会根据下拉菜单B过滤....

做这件事最好的方法是什么?例子或任何有帮助的链接将是伟大的!:)这适用于使用ASP Classic, HTML和JavaScript的网站

谢谢!

在我发表评论后,我把懒惰抛在脑后,发现了这个:http://www.aspmessageboard.com/showthread.php?181927-Allowing-Autopostback-after-dropdown-selection…

希望能有所帮助。

是否有明显的回发?

对于回发,有几种途径。您可以让每个下拉列表发布到不同的页面,也可以让它们全部发布到同一页面,并使用逻辑来确定哪个下拉列表发布。

这是前面方法的一个概念:

<script>
    function SubmitTo(where) {
        alert(where);
        f1.action = where + ".asp";
        f1.submit();
    }
</script>
<form name="f1" method="post">
<select name="a" id="a" onchange="SubmitTo('page1')"><option></option><option>1</option><option>2</option></select>
<br />
<select name="b" id="b" onchange="SubmitTo('page2')"><option></option><option>3</option><option>4</option></select>
<br />
<select name="c" id="c" onchange="SubmitTo('page3')"><option></option><option>5</option><option>6</option></select>
<br />
<select name="d" id="d" onchange="SubmitTo('page4')"><option></option><option>7</option><option>8</option></select>
</form>

如果没有post回,使用AJAX,您可以做类似的事情,除了您将结果的构建移动到浏览器中。基本上,您创建单独的"onChange"客户端-脚本处理程序(或监听器)来做两件事:ajax调用web服务器页面来检索"下一个"下拉列表的数据;当结果出现时,"构建"下一个下拉列表。

相关文章: