我有以下代码,如果在
中选择了某个选项,则显示下拉列表// Hide Dealer drop down list
$(".which_dealer").hide();
// if Dealer is chosen then show Dealer drop down list
$('#from_dealer').bind('change', function (e) {
if( $(this).val() == 9) {
$('.which_dealer').slideToggle('slow');
}
else{
$(".which_dealer").hide();
}
});
这很好但我还需要考虑用户重新访问此页面进行编辑。因此,如果他们之前选择了此选项,则不应隐藏.which_dealer列表。
为此,我想写一个在窗口加载时触发的if语句。我试过但我不知道使用什么功能因此我有两次“加载”。请参阅下面的我的尝试。
// if Dealer was chosen chosen previously then show Dealer drop down list
$(window).load('load', function (e) {
if( $('#from_dealer').val() == 9) {
$('.which_dealer').show();
}
else{
$('.which_dealer').hide();
}
});
答案 0 :(得分:2)
尝试:
$(document).ready(function(){ / *你的代码在这里* / });
答案 1 :(得分:0)
如果您想要保存用户之前访问网页的状态(例如他们之前是否选择了该网页中的选项),然后在下次访问时在网页中使用该状态,那么您有以下选项来存储状态,以便在不同的页面访问中可用:
Cookies在所有浏览器中无处不在,相当容易。它们可用于存储少量数据(通常小于2k字节)
本地存储非常易于使用,但仅在较新的浏览器中受支持。
无论用户实际上是谁,Cookie和本地存储都与特定计算机上的特定浏览器相关联。
在服务器上存储内容通常代表登录用户存储状态,然后无论用户在何处登录,该状态都可以用于该用户。
Cookie实现可能如下所示:
// cookie functions
function createCookie(name,value,days) {
if (days) {
var date = new Date();
date.setTime(date.getTime()+(days*24*60*60*1000));
var expires = "; expires="+date.toGMTString();
}
else var expires = "";
document.cookie = name+"="+value+expires+"; path=/";
}
function readCookie(name) {
var nameEQ = name + "=";
var ca = document.cookie.split(';');
for(var i=0;i < ca.length;i++) {
var c = ca[i];
while (c.charAt(0)==' ') c = c.substring(1,c.length);
if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
}
return null;
}
function eraseCookie(name) {
createCookie(name,"",-1);
}
$(document).ready(function() {
// restore dealer state from previous cookie
var lastDealerVal = readCookie("fromDealer");
if (lastDealerVal) {
$("from_dealer").val(lastDealerVal);
}
if (!lastDealerVal || lastDealerVal != "9") {
$(".which_dealer").hide();
}
// if Dealer is chosen then show Dealer drop down list
$('#from_dealer').bind('change', function (e) {
var val = $(this).val();
createCookie("fromDealer", val, 60);
if(val == 9) {
$('.which_dealer').slideToggle('slow');
}
else{
$(".which_dealer").hide();
}
});
});
答案 2 :(得分:0)
试
$(function(){ /* your code here */ } );
答案 3 :(得分:0)
试试这个
$(document).load(function (e) {
if( $('#from_dealer').val() == '9') {
$('.which_dealer').show();
}
else{
$('.which_dealer').hide();
}
});