2011-11-09 32 views
0

所以,我有这样的代码:的Javascript下拉(选择)

<form id="a"> 

<select name="day1" id="day1"> 
<option value="01">01</option> 
<option value="02">02</option> 
<option value="03">03</option> 
... 
</select> 

<select name="month1" id="month1"> 
<option value="01">Jan</option> 
<option value="02">Feb</option> 
<option value="03">Mar</option> 
... 
</select> 

<select name="day2" id="day2"> 
<option value="01">01</option> 
<option value="02">02</option> 
<option value="03">03</option> 
... 
</select> 

<select name="month2" id="month2"> 
<option value="01">Jan</option> 
<option value="02">Feb</option> 
<option value="03">Mar</option> 
... 
</select> 

<input type="submit" value="Submit" /> 

</form> 

我需要的脚本,提交表单后,浏览器重定向到

http://example.com/?from=AA-BB&to=XX-YY

AA将是从选择区域“DAY1”所选择的值,

BB会从选择区域“MONTH1”所选择的值,

XX将是从选择区域“DAY2”选择的值,

YY是从选择区域选择的值 “MONTH2”

提前感谢!

回答

1

请尝试以下

var day1 = $('#day1 option:selected').text(); 
var month1 = $('#month1 option:selected').text(); 
var day2 = $('#day2 option:selected').text(); 
var month2 = $('#month2 option:selected').text(); 
var suffix = 'from=' + day1 + '-' + month1 + '&to=' + day2 + '-' + month2; 
window.location = 'http://mypage.com/?' + suffix; 
+0

使用'$( '#...')。VAL()' – zzzzBov

+0

我曾经以为我知道一些jQuery的,但我越读在这里的好回答在stackoverflow;我越看到我需要学习的东西。那很棒! –

+1

@zzzzBov目前还不清楚OP是否想要价值或文本。如果他们想要这个值,那么是'val()'会更合适。 – JaredPar

0

在普通的JavaScript,你可以做以下(分为变量,你代表他们):

function submitHandler() { 
    var AA = document.a.day1.value; 
    var BB = document.a.month1.value; 
    var XX = document.a.day2.value; 
    var YY = document.a.month2.value; 

    location.href = "http://example.com/?from=" + AA + "-" + BB + "&to=" + XX + "-" + YY; 
} 

然后设置onsubmit您的形式,如下:

<form name="a" onsubmit="submitHandler(); return false;"> 
+0

仍然将我重定向到index.php?day1 = 03&month1 = 11&day2 = 08&month2 = 11这些变量都可以,我已经在alert中测试过它们。带有参数的整个网址得到了正确的提醒 - 表单仍然被提交,但我结束了我的index.php,没有发生重定向到example.com – DonCroce

+0

添加了

和现在的作品:) – DonCroce

+0

好抓;为了完整性,我已经更新了相应的答案。 –

0

怎么样...

var sFrom="02-03",sTo="03-02"; 

var from = sFrom.split('-'); 
var to= sTo.split('-'); 
console.log(from); 
console.log(to); 

$('select#day1 > option[value="'+from[0]+'"]').attr('selected','selected'); 

$('select#month1 > option[value="'+from[1]+'"]').attr('selected','selected'); 


$('select#day2 > option[value="'+to[0]+'"]').attr('selected','selected'); 

$('select#month2 > option[value="'+to[1]+'"]').attr('selected','selected'); 

至于查询字符串检索,检查this环节出