0

選択ボックスに「oui」と「non」の2つのオプションがある1つのフォームがあります。

  • 「oui」を選択すると「hello」が表示されます
  • 「非」を選択すると「無効」と表示されます

私の問題は、フォームを送信した後にページを更新すると、「oui」または「non」が適切に選択されているが、「hello」または「notvalid」などのそれに基づく値が選択されていないことです。

ここにいくつかのコードがあります

<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();
});
}

よろしくお願いします。

4

2 に答える 2

0

次を追加するのはどうですか?

$( function() {
    $("select.slct").each(
      function() {
        $('div.brandDiv').hide();
        var targetId = $(this).val();
        $('div#' + targetId).show();
      }
    );
  }
)
于 2012-07-31T16:05:32.153 に答える
0

domreadyでchangeイベントをtrigger()することはできませんか?

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

また

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

または、私があなたを正しく理解している場合は、showhide()という関数があります

$(function(){  // <-- on dom ready
      showhide(); // <-- run function
}); 
于 2012-07-31T16:10:51.403 に答える