【问题标题】:how to open window after submitting chained select (jquery)提交链式选择后如何打开窗口(jquery)
【发布时间】:2012-06-09 19:31:44
【问题描述】:

所以我有一个关于火车站的连锁选择。 人们必须选择他们的起点和目的地。

<form action="#" id="routeform" method="GET">
  <select class="station" name="station">
    <option value="Antwerpen">Antwerpen-Centraal</option>
    <option value="Bergen">Bergen</option>
    <option value="Brugge">Brugge</option>
    <option value="Brussel">Brussel</option>
    <option value="Charleroi">Charleroi-Zuid</option>
    <option value="DePanne">De Panne</option>
    <option selected="selected" value="Gent">Gent-Sint-Pieters</option>
    <option value="Hasselt">Hasselt</option>
    <option value="Kortrijk">Kortrijk</option>
    <option value="Leuven">Leuven</option>
    <option value="Luik">Luik-Guillemins</option>
    <option value="Namen">Namen</option>
    <option value="Oostende">Oostende</option>
    <option value="Roeselare">Roeselare</option>
  </select>
  <select class="series" name="series">
    <option value="">--</option>
    <option value="Antwerpen" class="Gent">Antwerpen-Centraal</option>
    <option value="Bergen" class="Gent">Bergen</option>
    <option value="Brugge" class="Gent">Brugge</option>
    <option value="Brussel" class="Gent">Brussel</option>
    <option value="Charleroi" class="Gent">Charleroi-Zuid</option>
    <option value="DePanne" class="Gent">De Panne</option>
    <option value="Hasselt" class="Gent">Hasselt</option>
    <option value="Kortrijk" class="Gent">Kortrijk</option>
    <option value="Leuven" class="Gent">Leuven</option>
    <option value="Luik" class="Gent">Luik-Guillemins</option>
    <option value="Namen" class="Gent">Namen</option>
    <option value="Oostende" class="Gent">Oostende</option>
    <option value="Roeselare" class="Gent">Roeselare</option>
    <option value="Gent" class="Antwerpen">Gent-Sint-Pieters</option>
    <option value="Brugge" class="Kortrijk">Brugge</option>
    <option value="Gent" class="Kortrijk">Gent-Sint-Pieters</option>
    <option value="Roeselare" class="Kortrijk">Roeselare</option>
    <option value="Gent" class="Brugge">Gent-Sint-Pieters</option>
    <option value="Kortrijk" class="Brugge">Kortrijk</option>
    <option value="Oostende" class="Brugge">Oostende</option>
    <option value="Roeselare" class="Brugge">Roeselare</option>
    <option value="Brugge" class="Oostende">Brugge</option>
    <option value="Gent" class="Oostende">Gent-Sint-Pieters</option>
    <option value="Brussel" class="Bergen">Brussel</option>
    <option value="Gent" class="Bergen">Gent-Sint-Pieters</option>
    <option value="Brussel" class="Namen">Brussel</option>
    <option value="Gent" class="Namen">Gent-Sint-Pieters</option>
    <option value="Bergen" class="Brussel">Bergen</option>
    <option value="Charleroi" class="Brussel">Charleroi-Zuid</option>
    <option value="Gent" class="Brussel">Gent-Sint-Pieters</option>
    <option value="Hasselt" class="Brussel">Hasselt</option>
    <option value="Leuven" class="Brussel">Leuven</option>
    <option value="Luik" class="Brussel">Luik-Guillemins</option>
    <option value="Namen" class="Brussel">Namen</option>
    <option value="Brussel" class="Leuven">Brussel</option>
    <option value="Gent" class="Leuven">Gent-Sint-Pieters</option>
    <option value="Hasselt" class="Leuven">Hasselt</option>
    <option value="Luik" class="Leuven">Luik-Guillemins</option>
    <option value="Brussel" class="Hasselt">Brussel</option>
    <option value="Gent" class="Hasselt">Gent-Sint-Pieters</option>
    <option value="Leuven" class="Hasselt">Leuven</option>
    <option value="Brussel" class="Charleroi">Brussel</option>
    <option value="Gent" class="Charleroi">Gent-Sint-Pieters</option>
    <option value="Brussel" class="Luik">Brussel</option>
    <option value="Gent" class="Luik">Gent-Sint-Pieters</option>
    <option value="Leuven" class="Luik">Leuven</option>
    <option value="Gent" class="DePanne">Gent-Sint-Pieters</option>
    <option value="Brugge" class="Roeselare">Brugge</option>
    <option value="Gent" class="Roeselare">Gent-Sint-Pieters</option>
    <option value="Kortrijk" class="Roeselare">Kortrijk</option>
  </select>
  <br/>
  <input type="submit" value="Go" />
</form>

每个结果都有一个不同的 html.page 它必须去。 例如,我试过这个(从安特卫普到根特):

$('#routeform').submit(function () {
  if ($('select.station').val() == 'Antwerpen') && ($('select.series').val() == 'Gent') {
    window.open("contact.html", "_self");
  }
  return false;
});

但它不起作用,我找不到问题......

提前致谢!

【问题讨论】:

    标签: jquery select submit chained


    【解决方案1】:

    试试这个:

    $('#routeform').submit(function (evt) {
      if (($('select.station').val() == 'Antwerpen') && ($('select.series').val() == 'Gent')) {
        window.open("contact.html", "_self");
      }
      evt.preventDefault(); // this prevents the submit
    });
    

    你的括号不正确

    或

    if ($('select.station').val() == 'Antwerpen' && $('select.series').val() == 'Gent') {
    

    因为您不必将 if 中的语句包含在括号内 - 它仍然有效

    Working example here

    【讨论】:

    • @AnneliesSiersack 确保您将代码包围在 $(document).ready(function() { // your code here }); 中,以确保在执行代码之前加载 DOM
    猜你喜欢
    • 1970-01-01
    • 2022-11-10
    • 1970-01-01
    • 2013-06-10
    • 2019-10-22
    • 2018-01-23
    • 1970-01-01
    • 1970-01-01
    • 2012-11-27
    相关资源
    最近更新 更多