将 select 选项值作为 url 参数传递到下一页

Pass select option values as url parameter to next page

我有基于 url 参数的自定义注册系统。

第 1 步:我有一些按钮,当您单击其中一个按钮时,它会将值传递到下一页,我可以在下一页使用 <?php echo $_GET['step1'];?> 获取值(这很好用)

第 2 步:我只想使用两个 select 框(不想在这里使用表格)并在 <a> 上单击我想将那个 selection 传递给 url.

这是我的代码:

<select name="gender">
    <option value="male">Male</option>
    <option value="female">Female</option>
</select>

<select name="color">
    <option value="red">Red</option>
    <option value="blue">Blue</option>
</select>

<a href="http://domain/step1/step2?step1=<?php echo $_GET['step1'];?&SELECTboxVALUES>">Next</a>

所以这是我想传递给下一页的内容:

http://domain/step1/step2/step3?parameterfromstep1=something&gender=male&color=red

我应该怎么做?我应该在单击按钮时使用 php 还是 jquery?

谢谢

好吧,这可能不是最好或最漂亮的方法,但我认为下面的代码适合您:

<select name="gender">
    <option value="male">Male</option>
    <option value="female">Female</option>
</select>

<select name="color">
    <option value="red">Red</option>
    <option value="blue">Blue</option>
</select>

<a href="http://domain/step1/step2/step3?step1=<?=$_GET['step1'];?>" id="nextButton">Next</a>

<script src="http://code.jquery.com/jquery-1.11.3.min.js"></script>

<script>
$(document).on('click', '#nextButton',function( event ) {

    // Stop default action
    event.preventDefault();

    window.location.href = $(this).attr('href') + '&gender='+$('select[name="gender"] option:selected').text() 
                                     + '&color='+$('select[name="color"] option:selected').text();


});
</script>
<a id="next" href="http://domain/step1/step2?step1=<?php echo $_GET['step1'];?&SELECTboxVALUES>">Next</a>

使用下面的代码

$('#next').on('click', function(e){
    e.preventDefault();
    var url = $(this).attr('href');
    var gender = $('[name="gender"]').val();
    var color = $('[name="color"]').val();
    if( gender && color ){
        window.location.href = url+'?&'+gender+color;
    }  
});