【问题标题】:How to get the value of a dropdown in Jquery when dom isn't rendering out a option selected attribute?当dom没有渲染出选项选择属性时,如何在Jquery中获取下拉列表的值?
【发布时间】:2015-09-24 21:31:43
【问题描述】:

您好,我有这一系列选项,我希望能够挑选出用户选择的值,但是标记中的任何选项都没有呈现option selected 属性?当我更改下拉值时也没有任何反应。

这里是否存在潜在问题,或者在 Jquery 中是否有办法使用 option selected 属性获取用户选择的值?

这是我的标记:

<select id="priceLookupDay">
    <option value="DAY">DAY</option>
    <option value="01">01</option>
    <option value="02">02</option>
    <option value="03">03</option>
    <option value="04">04</option>
    <option value="05">05</option>
    <option value="06">06</option>
    <option value="07">07</option>
    <option value="08">08</option>
</select>

<input type="button" id="FormSubmit" value="Look Up" />

到目前为止我的 Jquery...

$('#FormSubmit').click( function() {
        var selectedDate = $("#priceLookupDay").val();
        $("form").attr('action', $("form").attr('action', "?sd="+ selectedDate ));
        $("form").submit();
    }); 

提前感谢您的帮助!

【问题讨论】:

  • 请发布您的 JQuery/JavaScript 代码,因为其中存在错误。不在 HTML 中。另外你如何调用函数(JS代码)?是onchange 还是onclick
  • @divy3993 好的,谢谢。请查看更新后的帖子。
  • 你想要的是this吗?
  • @divy3993 非常感谢,我还没有使用它。
  • 好的,很高兴它对你有用。等待发布它作为答案。

标签: jquery html select html-select selected


【解决方案1】:

您的代码似乎是正确的,但您在设置formattr 属性时混合了单引号、双引号。

看看这是否适合你:

$('#FormSubmit').click(function() {
  var selectedDate = $("#priceLookupDay").val();

  $("form").attr('action', $("form").attr("action") + "?sd=" + selectedDate);
  
  alert($("form").attr('action'));

  //$("form").submit();      
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<form action="initURL">
  <select id="priceLookupDay">
    <option value="DAY">DAY</option>
    <option value="01">01</option>
    <option value="02">02</option>
    <option value="03">03</option>
    <option value="04">04</option>
    <option value="05">05</option>
    <option value="06">06</option>
    <option value="07">07</option>
    <option value="08">08</option>
  </select>

  <input type="button" id="FormSubmit" value="Look Up" />
</form>

【讨论】:

  • 抱歉,最后一条评论并不好,但现在可以正常工作了。非常感谢您的帮助。你不知道我看了多久!!! @ochi
  • 愿意为了其他人的利益分享您的答案吗?
【解决方案2】:

使用onchange

HTML

<select id="priceLookupDay" onchange="lookup()">
    <option value="DAY">DAY</option>
    <option value="01">01</option>
    <option value="02">02</option>
    <option value="03">03</option>
    <option value="04">04</option>
    <option value="05">05</option>
    <option value="06">06</option>
    <option value="07">07</option>
    <option value="08">08</option>
</select>

JS

function lookup()
{
    var selectedDate = $("#priceLookupDay").val();
    alert(selectedDate);
}

JSFiddle : DEMO

【讨论】:

    猜你喜欢
    • 2017-10-31
    • 1970-01-01
    • 2016-04-05
    • 1970-01-01
    • 2011-05-11
    • 1970-01-01
    • 1970-01-01
    • 2019-09-23
    • 2021-02-22
    相关资源
    最近更新 更多