0

こんにちは、HTML の選択ボックスで問題が発生しました。このボックスを最初にクリックすると、値が選択されずに「フォーカス」されることがありますか? (これが適切な言葉かどうかはわかりません) 私が言いたいことを説明できるように画面を作成しました:

画像へのリンク

これを回避するにはどうすればよいですか? ユーザーがクリックすると、地図上に正しい場所を表示する必要があります

私のコードの一部:

echo '<select id="selector'.$i.'" style=" height: 100%; width: 228px; margin: 2px;" onchange="JumpToPoint(this.value);">';
while($street = mysql_fetch_array($streets, MYSQL_ASSOC))
{
   echo '<option value="'.$street['x'].','.$street['y'].'">'.$street['name'].'</option>';        
}
echo '</select></div>';

この焦点をシミュレートする可能性はありますか? 最初のクリックのみが値に焦点を合わせているため、2 回目、3 回目などは常に正しい値を選択します。

問題はこの機能にあることがわかりました:

    jQuery.fn.filterByText = function(textbox) {
    return this.each(function() {
        var select = this;
        var options = [];
        $(select).find('option').each(function() {
            options.push({value: $(this).val(), text: $(this).text()});
        });
        $(select).data('options', options);

        $(textbox).bind('change keyup', function() {
            var options = $(select).empty().data('options');
            var search = $.trim($(this).val());
            var regex = new RegExp(search,"gi");

            $.each(options, function(i) {
                var option = options[i];
                if(option.text.match(regex) !== null) {
                    $(select).append(
                        $('<option>').text(option.text).val(option.value)
                    );
                }
            });
        });
    });
};

でもどこか分からない

助けてくれてありがとう。

4

2 に答える 2

0

この行を while ループの前に追加します。これが役立つと思います。

echo '---select----';

于 2013-09-24T14:07:18.503 に答える