jquery - 如何使用 jquery 刷新后保持下拉菜单处于选中状态

标签 jquery sql asp-classic ado

当有人在下拉列表中选择一个项目时,我使用 jquery 刷新页面。但随后它会返回默认选择的值。

(这可以防止用户使用两个下拉菜单进行搜索。)

如何获取下拉菜单以保存页面刷新时选择的项目?

代码如下:

<%@ LANGUAGE="VBSCRIPT" %>
<%
pagetitle="Contractor Details"
%>
<!--#INCLUDE VIRTUAL="/_lib/include/header.htm"-->
<!--#INCLUDE VIRTUAL="/_lib/include/menu.htm"-->
<script>
$(document).ready(function() {
    $("#abn,#cat").change(function () {
    this.form.submit();
})
});
</script>
<div class="twoColumnRow">
<div class="twoColumnContent">
<p class="breadCrm"><a href="/index.htm">Home</a> <span>&gt;</span> <a href="/tools/index.htm">Tools of the Trade</a> <span>&gt;</span> <a href="/tools/finance/index.htm">Finance and Purchasing</a><span>&gt;</span> <a href="/tools/finance/procurement/index.htm">Procurement and Contracts information</a></p>
<div class="contentPad">
<!-- Start of main content -->

<p class="imageRight">&nbsp;</p>
<h1><%=pagetitle%></h1>

<%
        Dim connectString, connect, conDB, sconDB, con, scon, src_abn, src_cat
        connectString = "Driver={Microsoft Text Driver (*.txt; *.csv)}; DBQ=" & Server.MapPath("data")
              src_abn = Request.QueryString("abn")
              src_cat = Request.QueryString("cat")
        set connect = Server.CreateObject("ADODB.connection")
        connect.open connectString

        if src_abn = "all" and src_cat = "all" then
        conDB = "SELECT * FROM cont.csv"    
        elseif src_abn = "all" then
        conDB = "SELECT * FROM cont.csv WHERE " & src_cat & " = 'Yes'"  
        elseif src_cat = "all" then
        conDB = "SELECT * FROM cont.csv WHERE ucase(abn) LIKE ucase('%"+src_abn+"%')"   
        else 
        conDB = " SELECT * FROM cont.csv WHERE " & src_cat & " = 'Yes' AND ucase(abn) LIKE ucase('%"+src_abn+"%')"
        end if

        sconDB = "SELECT * FROM cont.csv"   

        set con = connect.execute(conDB)
        set scon = connect.execute(sconDB)
%>
<h2>Search results</h2><hr />
<% if not con.BOF then %>
<div style="margin-top:1em">

  <form action="dbresults.htm" method="get">

      <p>Company name:<br/>
      <select id="abn" name="abn">
        <option label="All companies" value="all"></option>
        <% while (NOT scon.EOF) %>
        <option label="<%=scon("legal")%>" value="<%=scon("abn")%>"></option>
        <%scon.MoveNext()
                          Wend %>
      </select>
      </p>
     <p>Categories for Creative Design:<br/>
      <select id="cat" name="cat">
        <option class="group" label="All categories" value="all"></option>
        <option class="group" label="Strategic brand, marketing and communications advice" value="a"></option>
        <option class="group" label="Graphic design and layout" value="b"></option>
        <option class="group" label="Forms design" value="c"></option>
        <option class="group" label="Web design and development" value="d"></option>
        <option class="group" label="Authoring services" value="e"></option>
        <option class="group" label="Editorial services" value="f"></option>
        <option class="group" label="Translation services" value="g"></option>
        <option class="group" label="Photography and film services" value="h"></option>
        <option class="group" label="Scanning and digitisation services" value="i"></option>
        <option class="group" label="Multimedia editing services" value="j"></option>
      </select>
    </p>
    <input type="submit" value="Search" />
  </form>
  <br /><hr />

    <table style="font-size:.9em;" class="contentTable">
          <tr>
                <th>ABN:</th>
                <th>Company Name:</td>
          </tr>
  <% con.Movefirst() %>
  <% while (NOT con.EOF) %>
          <tr>
                <td><%=con("abn")%></th>
                <td><a href="dbcomp.htm?abn=<%=con("abn")%>&cat=all"><%=con("legal")%></a></td>
          </tr>
  <%
    con.MoveNext()
    Wend
  %>
</table>

</div>
<% else %>
    <% scon.Movefirst() %>
  <form action="dbresults.htm" method="get">

      <p>Company name:<br/>
      <select name="abn">
        <option label="All companies" value="all"></option>
        <% while (NOT scon.EOF) %>
        <option label="<%=scon("legal")%>" value="<%=scon("abn")%>"></option>
        <%scon.MoveNext()
                          Wend %>
      </select>
      </p>
     <p>Categories for Creative Design:<br/>
      <select name="cat">
        <option label="All categories" value="all"></option>
        <option label="Strategic brand, marketing and communications advice" value="a"></option>
        <option label="Graphic design and layout" value="b"></option>
        <option label="Forms design" value="c"></option>
        <option label="Web design and development" value="d"></option>
        <option label="Authoring services" value="e"></option>
        <option label="Editorial services" value="f"></option>
        <option label="Translation services" value="g"></option>
        <option label="Photography and film services" value="h"></option>
        <option label="Scanning and digitisation services" value="i"></option>
        <option label="Multimedia editing services" value="j"></option>
      </select>
    </p>
    <input type="submit" value="Search" />
  </form>
  <br /><hr />
<p>No records match your query.</p>
<p><a href="dbtest.htm">Return to search page</a></p>
<%
  end if
  con.close
%>


<!-- End of main content -->
</div> <!-- end contentPad div -->
</div> <!-- end twocolumncontent div -->
<div class="twoColumnLinks">

<!--<div class="relatedLinks">
<h3>Related Links</h3>
<ul>
<li><a href="/index.htm">Related link 1</a></li>
</ul>
</div>--> <!-- end relatedlinks div -->
<!--#INCLUDE VIRTUAL="/_lib/include/quicklinks.htm"-->
<!--#INCLUDE VIRTUAL="/_lib/include/mylinks.htm"-->
</div> <!-- end twocolumnlinks div -->
</div> <!-- end twocolumnrow div -->
<!--#INCLUDE VIRTUAL="/_lib/include/footer.htm"-->

最佳答案

将属性“selected”添加到您选择的选项标签中:

<option label="some label" value="some value" selected>Some text</option>

关于jquery - 如何使用 jquery 刷新后保持下拉菜单处于选中状态,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14249605/

相关文章:

javascript - JQuery 等高行

javascript - 当我在下面的代码中输入 jquery 时如何过滤我的复选框?

javascript - 即使子网格没有使用 xml 的数据,jqGrid 也会显示 + 号

javascript - 带有多个增量按钮的数字旋转器

php - 连接到相同的数据库 WordPress 表被添加到

mysql - 超过 1 个表的 SQL 内连接问题

javascript - 经典 ASP 在页面之间传递值

多行 SQL 插入语句

Javascript 仅显示一行(记录集)而不是多行

asp-classic - 经典的asp测试平台,用于快速功能/单元测试