1

ここで問題があります。このコードは動的divを作成します:

for (var i = 0; i < number; i++) {
            $('#konf-select-mech').append('<div class="ksm-box"><table><tr><td width="111" class="ksmbt-r1"><span>Otvor '+ pocitadlo++ +':</span></td><td><select class="select-menu1"><option>Vyber mechanizmus</option><option value="Vypinac">Vypínač</option><option value="Zasuvka">Zásuvka</option></select></td><td width="106"><img src="./images/konfsipka.png" alt="" /></td><td><select class="select-menu2"></select></td></tr></table></div>');
        }

そして私はjavascriptを使用してそれを編集することができます:

$('.select-menu1').live('click', function() {
        var selectx = $(this).val();
        if(selectx == "Vypínač") {
            $(this).parent().parent().find('.select-menu2 option').remove();
            $(this).parent().parent().find('.select-menu2').append('<option value="Jednopackovy">Jednopáčkový</option><option value="Krizovy">Krížový</option><option value="Dvojpackovy">Dvojpáčkový</option><option value="Tlacitko">Tlačítko</option><option value="Stmievac">Stmievač</option>');
        }
        else if (selectx == "Zásuvka") {
            $(this).parent().parent().find('.select-menu2 option').remove();
            $(this).parent().parent().find('.select-menu2').append('<option value="Zasuvka230V">Zásuvka 230V</option><option value="ZasuvkaTVRD">Zásuvka TV+RD</option><option value="ZasuvkaTVRDSAT">Zásuvka TV+RD+SAT</option><option value="DatZasuvJedFTP">Dátová zásuvka jednoduchá FTP cat6</option><option value="DatZasuvDvojFTP">Dátová zásuvka dvojitá FTP cat6</option><option value="TelZasuvJedRJ11">Telefónna zásuvka jednoduchá RJ11</option>');
        }
        else if (selectx == "Vyber mechanizmus") {
            return false;
        }
    });

しかし、期待どおりには機能しません。何が悪いのかわからない。誰かが私を助けてくれますか?

ありがとうございました。

4

2 に答える 2

0

使用しないでください.live()。を使用し.on()ます。また、セレクターをに変更し$('.select-menu1 option')ます。

于 2012-04-05T11:57:14.210 に答える
0

select-menu1<select>要素の場合、次のように .click() の代わりにイベント.change()を使用する必要があります。

$('.select-menu1').change(function(
  // do something
));

また

 $('.select-menu1').live('change', function(
  // do something
));
于 2012-04-05T12:02:51.743 に答える