使用ajax导入的更改触发器ID

时间:2017-06-19 09:53:35

标签: javascript jquery ajax

我有一个小脚本,我没有成功,我想修改它,但我卡住了。

有两个选择选项,州和城市。当选择州时,ajax将为该州带来特定的城市。

我有状态和城市的默认值,但我无法触发城市改变。

这是javascript

        $("#state_id").change(function() {
    $.ajax({
        url: "<?php echo base_url() . "ajaxreq/getcity/"; ?>" + $("#state_id").val(),
        success: function(result) {
            $("#ajaxcity").html(result);
        }
    });
});




$('#state_id').trigger('change');

这是html部分:

 <div class="logininputfield">
                <label><?php echo $this->lang->line('region') ?><span>*</span></label>
                <div class="inputfieldsection">
                    <select name="state_id" id="state_id">
                        <option value=""><?= $this->lang->line("please_select"); ?>   </option>
                        <?php foreach ($state as $key => $state_name) { ?>
                            <option value="<?php echo $key; ?>" <?php if ($state_id == $key ) { ?> selected <?php } ?> ><?php echo $state_name; ?></option>
                        <?php } ?>
                    </select>
                    <span for="state_id" class="error"></span>
                </div>
            </div>
    <div class="logininputfield">
                <label><?php echo $this->lang->line('city') ?><span>*</span></label>
                <div class="inputfieldsection">
                    <span id="ajaxcity">
                        <select name="city" id="city" class="input span6">
                            <option value=""><?php echo $this->lang->line('please_select'); ?></option>
                        </select>
                    </span>
                    <span for="city" class="error"></span>
                </div>
            </div>

结果如下:

<div class="inputfieldsection">
                        <span id="ajaxcity">        <select name="city_id" id="city_id" class="valid">
                                                  <option value="102">München</option>
                                      <option value="103">Nürnberg</option>
                                      <option value="104">Augsburg</option>
                                      <option value="105">Regensburg</option>
                                      <option value="106">Ingolstadt</option>
                                      <option value="107">Würzburg</option>
                                      <option value="108">Fürth</option>
                                      <option value="109">Erlangen</option>
                                      <option value="110">Bayreuth</option>
                                      <option value="111">Bamberg</option>
                                      <option value="112">Aschaffenburg</option>
                                      <option value="113">Landshut</option>
                                      <option value="114">Kempten (Allgäu)</option>
                                      <option value="115">Rosenheim</option>
                                      <option value="116">Neu-Ulm</option>
                                      <option value="117">Schweinfurt</option>
                                      <option value="118">Passau</option>
                                      <option value="119">Freising</option>
                                      <option value="120">Dachau</option>
                                      <option value="121">Straubing</option>
                                      <option value="122">Hof</option>
                                      <option value="123">Memmingen</option>
                                      <option value="124">Kaufbeuren</option>
                                      <option value="125">Weiden in der Oberpfalz</option>
                                      <option value="126">Amberg</option>
                                      <option value="127">Coburg</option>
                                      <option value="128">Ansbach</option>
                                      <option value="129">Schwabach</option>
                                      <option value="130">Germering</option>
                                      <option value="131">Neumarkt in der Oberpfalz</option>
                                      <option value="132">Erding</option>
                                      <option value="133">Fürstenfeldbruck</option>
                                      <option value="134">Deggendorf</option>
                                      <option value="135">Forchheim</option>
                                      <option value="136">Friedberg</option>
                                      <option value="137">Neuburg an der Donau</option>
                                      <option value="138">Landsberg am Lech</option>
                                      <option value="139">Schwandorf</option>
                                      <option value="140">Königsbrunn</option>
                                      <option value="141">Unterschleißheim</option>
                                      <option value="142">Kulmbach</option>
                                      <option value="143">Olching</option>
                                      <option value="144">Garmisch-Partenkirchen</option>
                                      <option value="145">Lauf an der Pegnitz</option>
                                      <option value="146">Zirndorf</option>
                                      <option value="147">Lindau</option>
                                      <option value="148">Pfaffenhofen an der Ilm</option>
                                      <option value="149">Roth</option>
                                      <option value="150">Geretsried</option>
                                      <option value="151">Unterhaching</option>
                                      <option value="152">Herzogenaurach</option>
                                      <option value="153">Starnberg</option>
                                      <option value="154">Waldkraiburg</option>
                                      <option value="155">Vaterstetten</option>
                                      <option value="156">Senden</option>
                                      <option value="157">Weilheim in Oberbayern</option>
                                      <option value="158">Sonthofen</option>
                                      <option value="159">Neusäß</option>
                                      <option value="160">Gersthofen</option>
                                      <option value="161">Bad Kissingen</option>
                                      <option value="162">Ottobrunn</option>
                                      <option value="163">Aichach</option>
                                      <option value="164">Puchheim</option>
                                      <option value="165">Kitzingen</option>
                                      <option value="166">Traunreut</option>
                                      <option value="167">Gauting</option>
                                      <option value="168">Lichtenfels</option>
                                    </select><span for="city_id" class="error"></span>
        </span>
                        <span for="city" class="error"></span>
                    </div>

我是javascript的菜鸟。 我添加了自己的触发器部分,它的工作原理,但我不知道如何使它适用于城市。

这将是这样的,但它不起作用。

$('#city_id').val(<? echo $city_id; ?>).trigger('change');

提前谢谢。

1 个答案:

答案 0 :(得分:0)

这是我正在寻找的答案

<?php foreach ($city as $key => $city_name) { ?>
                                    <option value="<?php echo $key; ?>" <?php if($city_id == $key) {?> selected <?php } ?> ><?php echo $city_name; ?></option>
                                <?php } ?>