我正在尝试设置下拉框的默认值,如下所示:
<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>
基于如下所示的网址:
http://localhost:8888/wordpress/wp-admin/admin.php?page=Add_Customer&type=add&id=21&date=11/15/2013×lot=d3_0
下拉列表包含用户在预约时可以选择的时间段。该URL具有时间段值(timeslot=d3_0
)。为此,我打算将selected="selected"
属性添加到相应的<option>
。我遇到的问题是我无法弄清楚如何使用jQuery或JavaScript在选择上执行算法。
我尝试使用一些jQuery函数,如.load()
和.on
,但所有这些都需要一个事件(点击,鼠标悬停等)。
所以我的问题是,如何在我需要的元素上执行函数?我还应该补充一点,我在一个插件中这样做,我正在为Wordpress创建。
答案 0 :(得分: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);
答案 1 :(得分: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, ' '));
}