0

次のようなドロップダウン ボックスのデフォルト値を設定しようとしています。

         <select id="schedule_timeslot" name="timeslot">
            <option name="8-10" class="schedule_time" value="0" id="ts0">8am - 10am</option>
            <option name="10-12" class="schedule_time" value="1" id="ts1">10am-12pm</option>
            <option name="12-2" class="schedule_time" value="2" id="ts2" >12pm - 2pm</option>
            <option name="2-4" class="schedule_time" value="3" id="ts3">2pm - 4pm</option>
            <option name="4-6" class="schedule_time" value="4" id="ts4" >4pm - 6pm</option> 
        </select>

次のような URL に基づいています。

http://localhost:8888/wordpress/wp-admin/admin.php?page=Add_Customer&type=add&id=21&date=11/15/2013&timeslot=d3_0

ドロップダウンには、ユーザーが予定を予約するときに選択できるタイムスロットがあります。URL にはタイムスロット値 ( timeslot=d3_0) があります。これを行うにはselected="selected"、それぞれの に属性を追加します<option>。私が抱えている問題は、jQuery または JavaScript を使用して選択範囲でアルゴリズムを実行する方法がわからないことです。

.load()やのような jQuery 関数をいくつか使用してみまし.onたが、これらにはすべてイベント (クリック、マウスオーバーなど) が必要です。

私の質問は、必要な要素で関数を実行するにはどうすればよいですか? また、Wordpress 用に作成しているプラ​​グインでこれを行っていることも付け加えておく必要があります。

4

2 に答える 2

0

私は完全に理解しているかどうかわかりませんが、次のjQueryをチェックして、それが役立つかどうか教えてください

//This listens for when a different option is selected
$('select#schedule_timeslot').change(function() {
    var selectedOptionValue = $(this).val();  //0,1,2 .. etc
    var selectedId = $(this).attr("id");
});

目的のオプションをプログラムで選択するには

$('select#schedule_timeslot').val(desiredValueStr);
于 2013-11-13T23:47:14.773 に答える
0

あなたの質問を正しく理解しているかどうかはわかりませんが、

たとえば、デフォルト値のゼロを選択すると、次のようになります。

$( document ).ready(function() {
  $("schedule_timeslot").val("0")
});

編集1:

たぶん、このようなものです。

  $( document ).ready(function() {

  var qs = GetQSParameterByName("timeslot");

     if(qs !=null){
     $("schedule_timeslot").val(qs ) // your value

     }
});

    // read query string from url
     function GetQSParameterByName(name) {

        var match = RegExp('[?&]' + name.toLowerCase() + '=([^&]*)')
              .exec(window.location.search.toLowerCase() );

        return match && decodeURIComponent(match[1].replace(/\+/g, ' '));
    }
于 2013-11-13T23:49:38.923 に答える