1

ドロップダウン メニューの置換を適用しましたが、select-option-form の事前選択された値が定義されていないため (値は動的に生成されます)、jQuery の置換は空のままです。置換をクリックしてオプションを選択すると、正常に機能します。エラーの原因であると思われる置換コードの抜粋を次に示します。

function createDropDownSF(){
  var searchForm_type = $("#searchForm_type");
  var selected = searchForm_type.find("option[selected]");
  var options = $("option", searchForm_type);

したがって、このコードで関数を拡張して、選択した値がないときに最初のオプションを使用できるようにしようとしましたが、機能しません。

if (selected.is("undefined")) {
    searchForm_type.find("option")[0];
}

誰にもアイデアがありますか?

4

3 に答える 3

0

そういう意味だったんですか?

function createDropDownSF(){
  var searchForm_type = $("#searchForm_type");
  var selected = searchForm_type.find("option[selected]");
        $("select option:selected").length > 0;
        $('select option').first().attr('selected', true);
  var options = $("option", searchForm_type);
于 2012-12-04T08:54:03.720 に答える
0
<select id="test">
<option>1</option>
<option>2</option>
<option selected="selected">3</option>
<option>4</option>

$(function () {

    if ($("#test option:selected").length > 0) {
        // something is selected
        alert("selected");
    } else {
        // nothing is selected
        $('#test option').first().attr('selected', true);
    }
});

値が選択されていない選択を設定する方法がわかりませんが、このコードは機能するはずです。

于 2012-12-06T12:12:06.913 に答える
0

最初に、選択されているすべてのオプションからリストを取得して、長さが 0 より大きいかどうかを確認します。

 $("select option:selected").length > 0

次に、JQuery を使用して最初のオプションを選択できます。

$('select option').first().attr('selected', true);
于 2012-12-04T08:16:26.857 に答える