Jquery 获取选择选项的原始值

Jquery 获取选择选项的原始值,jquery,drop-down-menu,html-select,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”,但是否有办法让它返回初始值

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

val = inputfield.text()
if (!val){
    val = $(inputfield).attr("value")
}
inputfield.val(val)
这适用于除“选择”下拉列表之外的所有输入字段

如果我有一个下拉列表,其中的值为“1”、“2”、“3”,并且我最初选择了“2”,然后将所选选项更改为“1”
inputfield.find(“:selected”)
将返回“1”,但是否有办法让它返回初始值(在本例中为“2”)


检查页面的源代码时,仍会将“2”显示为选中状态。

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

然后,您可以根据需要使用以下类似的方法来“重置”下拉列表:

根据您的参数:

<div>
<select>
  <option>1</option>
  <option selected>2</option>
  <option>3</option>
</select>
</div>
<button id="reset">reset</button>
如果您有任何问题,请告诉我。

我最终找到了酒店

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

下面是我如何修改代码以将select选项重置回其原始值:

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

输入是否在表单中?如果是这样,
form.reset()
会将输入重置回页面加载时的状态。我不想重置整个表单,只想重置单个字段
inputfield.find('option').prop('selected', function () {
    if($(this).prop('defaultSelected')){
        val = $(this).val();
        inputfield.val(val);
    }
});