有一页面,内有三个select控件,一个提交按钮。现在想每次提交之后,三个控件的选择项保留提交之前选择的,用JS写好几天了也写不出来,求教!
PS:不用ajax,因为这页面需要刷新的东西太多,感觉用ajax不太方便。上代码:
这是主页面代码:<form method="POST" action="<?=site_url('home/query_timeid')?>">
<p style="text-align:center">周报区间:<select name="year">
<option selected value="2011">2011年</option>
<option value="2012">2012年</option>
<option value="2013">2013年</option>
<option value="2014">2014年</option>
<option value="2015">2015年</option>
</select>
<select id="month" name="month" size="1">
<option value="1">1月</option>
<option value="2">2月</option>
<option value="3">3月</option>
<option value="4">4月</option>
<option value="5">5月</option>
<option value="6">6月</option>
<option value="7">7月</option>
<option value="8">8月</option>
<option value="9">9月</option>
<option value="10">10月</option>
<option value="11">11月</option>
<option value="12">12月</option>
</select>
<select name="week">
<option value="1">第一周</option>
<option value="2">第二周</option>
<option value="3">第三周</option>
<option value="4">第四周</option>
<option value="5">第五周</option>
</select><input type="submit" name="submit" value=" 查询 "/>
</form>这是写在head里的script:
<script language="javascript" type="text/javascript">
function save() {
var monthId = document.getElementById("month").selectedIndex;
document.cookie = "monthId=" + monthId;
var weekId = document.getElementById("week").selectedIndex;
document.cookie = 'weekId=' + weekId;
}
window.onload = function ()
{
var cookieData=new String(document.cookie);
var cookieHeader="monthId=";
var cookieStart=cookieData.indexOf(cookieHeader)+cookieHeader.length;
var cookieEnd=cookieData.indexOf("; ",cookieStart);
if(cookieEnd!=-1)
{
cookieEnd=cookieData.length;
}
if(cookieData.indexOf(cookieHeader)!=-1)
{
//alert(cookieData.substring(cookieStart,cookieEnd));
}
else
{
//alert("not found!");
save();
}
}
</script>alert出来的值每次都一样,哎
PS:不用ajax,因为这页面需要刷新的东西太多,感觉用ajax不太方便。上代码:
这是主页面代码:<form method="POST" action="<?=site_url('home/query_timeid')?>">
<p style="text-align:center">周报区间:<select name="year">
<option selected value="2011">2011年</option>
<option value="2012">2012年</option>
<option value="2013">2013年</option>
<option value="2014">2014年</option>
<option value="2015">2015年</option>
</select>
<select id="month" name="month" size="1">
<option value="1">1月</option>
<option value="2">2月</option>
<option value="3">3月</option>
<option value="4">4月</option>
<option value="5">5月</option>
<option value="6">6月</option>
<option value="7">7月</option>
<option value="8">8月</option>
<option value="9">9月</option>
<option value="10">10月</option>
<option value="11">11月</option>
<option value="12">12月</option>
</select>
<select name="week">
<option value="1">第一周</option>
<option value="2">第二周</option>
<option value="3">第三周</option>
<option value="4">第四周</option>
<option value="5">第五周</option>
</select><input type="submit" name="submit" value=" 查询 "/>
</form>这是写在head里的script:
<script language="javascript" type="text/javascript">
function save() {
var monthId = document.getElementById("month").selectedIndex;
document.cookie = "monthId=" + monthId;
var weekId = document.getElementById("week").selectedIndex;
document.cookie = 'weekId=' + weekId;
}
window.onload = function ()
{
var cookieData=new String(document.cookie);
var cookieHeader="monthId=";
var cookieStart=cookieData.indexOf(cookieHeader)+cookieHeader.length;
var cookieEnd=cookieData.indexOf("; ",cookieStart);
if(cookieEnd!=-1)
{
cookieEnd=cookieData.length;
}
if(cookieData.indexOf(cookieHeader)!=-1)
{
//alert(cookieData.substring(cookieStart,cookieEnd));
}
else
{
//alert("not found!");
save();
}
}
</script>alert出来的值每次都一样,哎
LZ要的就是点击查询完以后,又返回这个页面,然后三个select是点击查询之前的直接在这个页面加三个隐藏域
<input type='hidden' name='year' id='yearString'>
后台定义三个属性,String year,查询完一块返回给页面
前台直接判断
if(""!=$("#yearString").val() && null!=$("#yearString").val()){
$("#year").val($("#yearString").val())
}
var obj = document.getElementById("year");
for (var i = 0; i < obj.options.length; i++) {
if (obj.options[i].value == $("#yearString").val()) {
obj.options[i].selected=true;
break;//好像是return false;
}
}
}
剩下的自己上网搜索吧
<%
syear = request.form("year");
smouth = request.form("month");
sday = request.form("day");
if (syear<>"" && smonth<>"" && sday<>"")
{
%>
document.body.form1.year = <%=syear %>;
document.body.form1.month = <%=day %>;
document.body.form1.day = <%=day %>;
<%
}
%>
</script>
<head><script language="javascript" type="text/javascript">
function save() {
alert(11);
var fm = document.getElementById("fm");
var monthId = document.getElementById("month").selectedIndex;
document.cookie = "monthId=" + monthId;
alert(document.cookie);
alert(22);
fm.submit();
}
window.onload = function ()
{
var cookieData=new String(document.cookie);
alert(cookieData);
var cookieHeader="monthId=";
var cookieStart=cookieData.indexOf(cookieHeader)+cookieHeader.length;
var cookieEnd=cookieData.indexOf("; ",cookieStart);
alert(cookieEnd);
if(cookieEnd!=-1)
{
var month = cookieData.substring(cookieStart,cookieEnd);
alert(month);
document.getElementById("month").value=2; }
}
</script></head>
<body><form method="POST" id="fm" action="<?=site_url('home/query_timeid')?>">
<p style="text-align:center">周报区间:<select id="month" name="month" size="1">
<option value="1">1月</option>
<option value="2">2月</option>
<option value="3">3月</option>
<option value="4">4月</option>
<option value="5">5月</option>
<option value="6">6月</option>
<option value="7">7月</option>
<option value="8">8月</option>
<option value="9">9月</option>
<option value="10">10月</option>
<option value="11">11月</option>
<option value="12">12月</option>
</select><input type="button" onclick="save();" value=" 查询 "/>
</form>
</body>
</html>
<head>
<script language="javascript" type="text/javascript">
function save() {
var monthId = document.getElementById("month").selectedIndex;
document.cookie = "monthId=" + monthId;
var weekId = document.getElementById("week").selectedIndex;
document.cookie = 'weekId=' + weekId;
}
window.onload = function ()
{
var cookieData=new String(document.cookie);
var cookieHeader="monthId=";
var cookieStart=cookieData.indexOf(cookieHeader)+cookieHeader.length;
var cookieEnd=cookieData.indexOf("; ",cookieStart);
if(cookieEnd!=-1)
{
cookieEnd=cookieData.length;
}
if(cookieData.indexOf(cookieHeader)!=-1)
{
alert(cookieData.substring(cookieStart,cookieEnd)); }
else
{
alert("not found!"); }
save();
}
</script></head>
<body>
<form method="POST" action="<?=site_url('home/query_timeid')?>">
<p style="text-align:center">周报区间:<select name="year">
<option selected value="2011">2011年</option>
<option value="2012">2012年</option>
<option value="2013">2013年</option>
<option value="2014">2014年</option>
<option value="2015">2015年</option>
</select>
<select id="month" name="month" size="1">
<option value="1">1月</option>
<option value="2">2月</option>
<option value="3">3月</option>
<option value="4">4月</option>
<option value="5">5月</option>
<option value="6">6月</option>
<option value="7">7月</option>
<option value="8">8月</option>
<option value="9">9月</option>
<option value="10">10月</option>
<option value="11">11月</option>
<option value="12">12月</option>
</select>
<select name="week">
<option value="1">第一周</option>
<option value="2">第二周</option>
<option value="3">第三周</option>
<option value="4">第四周</option>
<option value="5">第五周</option>
</select><input type="submit" name="submit" value=" 查询 "/>
</form>
</body>
</html>
这段代码什么意思?刷新之后不能保存select值啊
你给我代码我试了下,不行,没有弹出框,说明 alert(cookieData.substring(cookieStart,cookieEnd));这句根本就没有执行我的JS水平很菜,不好意思,还请大家帮帮忙。