1

CI、PHP、JQuery を使用して Web サイトを開発しています。ドロップダウンメニューがあります。JQuery を使用して値を取得しようとすると、結果は常に 0 になります。これが私のコードです。

html:

 <div id="label"><label>Merk</label></div><div id="pilihan"><select name="brand">
 <option value="0">PILIH SATU</option>
 <option value="1">ACURA</option>
 <option value="2">ALFA ROMEO</option>
 <option value="3">ASTON MARTIN</option>
 <option value="4">AUDI</option>
 <option value="5">BENTLEY</option>
 <option value="6">BERTONE</option>
 <option value="7">BIMANTARA</option>
 <option value="8">BMW</option>
 <option value="9">BUGATTI</option>
 <option value="10">BUICK</option>
 <option value="11">CADILLAC</option>
 <option value="12">CHANA</option>
 <option value="13">CHERY</option>
 <option value="14">CHEVROLET</option>
 <option value="15">CHRYSLER</option>
 <option value="17">CITROEN</option>
 <option value="18">CODA</option>
 <option value="19">DAEWOO</option>
 <option value="20">DAIHATSU</option>
 <option value="21">DAIMLER</option>
 <option value="22">DATSUN</option>
 <option value="23">DODGE</option>
 <option value="24">DYNA</option>
 <option value="25">FERRARI</option>
 <option value="26">FIAT</option>
 <option value="27">FORD</option>
 <option value="28">FOTON</option>
 <option value="29">GREELY</option>
 <option value="30">GMC</option>
 <option value="31">GREAT WALL</option>
 <option value="32">HAGLER</option>
 <option value="33">HINO</option>
 <option value="34">HOLDEN</option>
 <option value="35">HONDA</option>
 <option value="36">HUMMER</option>
 <option value="37">HYUNDAI</option>
 <option value="38">INFINITI</option>
 <option value="39">ISUZU</option>
 <option value="40">JAGUAR</option>
 <option value="41">JEEP</option>
 <option value="42">KIA</option>
 <option value="43">KTM</option>
 <option value="44">LAMBORGHINI</option>
 <option value="45">LAND ROVER</option>
 <option value="46">LEXUS</option>
 <option value="47">LIGIER</option>
 <option value="48">LOTUS</option>
 <option value="49">MASERATI</option>
 <option value="50">MAYBACH</option>
 <option value="51">MAZDA</option>
 <option value="52">MCLAREN</option>
 <option value="53">MERCEDES-BEN</option>
 <option value="54">MINI</option>
 <option value="55">MITSUBISHI</option>
 <option value="56">MORGAN</option>
 <option value="57">NISSAN</option>
 <option value="58">OPEL</option>
 <option value="59">PEUGEOT</option>
 <option value="60">PORSCHE</option>
 <option value="61">PROTON</option>
 <option value="62">RANGE ROVER</option>
 <option value="63">RENAULT</option>
 <option value="64">ROLLS-ROYCE</option>
 <option value="65">SAAB</option>
 <option value="66">SKODA</option>
 <option value="67">SMART</option>
 <option value="68">SSANGYONG</option>
 <option value="69">SUBARU</option>
 <option value="70">SUNBEAM</option>
 <option value="71">SUZUKI</option>
 <option value="72">TATA</option>
 <option value="73">TIMOR</option>
 <option value="74">TOYOTA</option>
 <option value="75">TRIUMPH</option>
 <option value="76">VAUXHALL</option>
 <option value="77">VOLKSWAGEN</option>
 <option value="78">VOLVO</option>
 <option value="79">WRANGLER</option>
 </select></div>

JQuery:

$('select[name="brand"]').change(function(){
        var brand = $("select[name='brand']").val();
        alert(brand);
        $.ajax({
            type: "POST",  
            url: '<?php echo site_url("ajax_data/getmodel"); ?>',
            dataType: 'json', 
            data: { vehicle_class : '', vehicle_brand : brand },
            success: function(data) {
                // Clear all options from vehicle class select 
                $('select[name="model"] option').remove(); 

                // Fill vehicle class select 
                $.each(data, function(i, j){ 
                    var row = "<option value=\"" + j.model_id + "\">" + j.model_name + "</option>"; 
                    $(row).appendTo('select[name="model"]'); 
                });
            }
        });
    });

私のコードの何が問題なのですか? ありがとうございました。

4

2 に答える 2

0

私はあなたのコードをテキストファイル(という名前test.html)に入れました...

<html>
<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
</head>
<body>

<div id="label"><label>Merk</label></div><div id="pilihan"><select name="brand">
<option value="0">PILIH SATU</option>
<option value="1">ACURA</option>
<option value="2">ALFA ROMEO</option>
<option value="3">ASTON MARTIN</option>
:       :        :
<option value="77">VOLKSWAGEN</option>
<option value="78">VOLVO</option>
<option value="79">WRANGLER</option>

<script type="text/javascript">
$('select[name="brand"]').change(function(){
    var brand = $("select[name='brand']").val();
    alert( brand );
});
</script>

</body>
</html>

コードは、FireFox、Chrome、および IE8 で完全に機能します。

また、私の仲間はサラムセジャテラと言います。:o)

于 2013-01-08T15:32:34.443 に答える
-3

select [name = brand]で選択しています。これは、アクセスしようとしていることを意味します <select value="THIS_IS_WHAT_YOU_ARE_SELECTING">

ただし、選択したオプションが必要なので、

$('select[name=brand] option:selected').val();

于 2013-01-08T15:25:01.733 に答える