获取选择选项的原始值

时间:2018-12-04 23:27:35

标签: jquery drop-down-menu html-select

我在页面上有一个按钮,可以让用户将输入字段选项恢复为原始值

val = inputfield.text()
if (!val){
    val = $(inputfield).attr("value")
}
inputfield.val(val)

这适用于除选择下拉列表以外的所有输入字段。

如果我的下拉菜单中包含值“ 1”,“ 2”,“ 3”,并且最初选择了“ 2”,然后将所选选项更改为“ 1”。 inputfield.find(':selected')将返回“ 1”,但是有任何方法可以使其返回初始值(在这种情况下为“ 2”)。

选中页面的来源仍显示为“ 2”。

2 个答案:

答案 0 :(得分:1)

一个简化的选项可能是将页面加载时下拉列表的原始值存储在本地存储或类似的无害存储中。

然后,您可以根据需要使用以下内容来“重置”下拉列表:

给出您的参数:

<div>
<select>
  <option>1</option>
  <option selected>2</option>
  <option>3</option>
</select>
</div>
<button id="reset">reset</button>

您可能会使用以下内容:

var org = $('div select').find(':selected').text()

$('#reset').on('click',function(){
  $('div select').val(org)
})

如有任何疑问,请告诉我。

答案 1 :(得分:0)

我最终找到了defaultSelected属性。

.prop('defaultSelected')仅对原始选择选项返回true

这是我修改代码的方法,将选择选项重置为原始值:

inputfield.find('option').prop('selected', function () {
    if($(this).prop('defaultSelected')){
        val = $(this).val();
        inputfield.val(val);
    }
});