在页面刷新时保留基于选择框的值


Retaining select box based values on page refresh

我有一个表单,在选择框中有两个选项"oui"answers"non":

  • 当选择"oui"时,显示"hello"
  • 选择"非"时,显示"无效"

我的问题是,当我在提交表单后刷新页面时,"oui"或"non"被正确选择,但不是基于它的值,如"hello"或"not valid"

这是一些代码

<p>choose option: <select name="opt" class="slct">
    <option value="0" selected="selected">--</option>
    <option value="oui">Oui</option>
    <option value="non">Non</option>
    </select>
</p>
<div id="oui" class="brandDiv">
  hello
</div>
<div id="non" class="brandDiv">
  not valid
</div>

和jquery

function showhide() {
$("div.brandDiv").hide();
$("select.slct").bind('change', function() {
    $('div.brandDiv').hide();
    var targetId = $(this).val();
    $('div#' + targetId).show();
});
}

提前谢谢大家。

添加以下内容怎么样?

$( function() {
    $("select.slct").each(
      function() {
        $('div.brandDiv').hide();
        var targetId = $(this).val();
        $('div#' + targetId).show();
      }
    );
  }
)

难道不能在dom上触发()更改事件吗?

$("select.slct").trigger('change');

$("select.slct").change();

或者,如果我理解正确的话,你有一个叫做showhide()的函数

$(function(){  // <-- on dom ready
      showhide(); // <-- run function
});