2014-08-31 86 views
0

我选择的值从jQuery的传递给了jQuery中传递给URL到下一个页面,这是我的复选框看起来像:如何清除先前的检查值

<label class="checkbox"> 
    <input type="checkbox" value="male" id="gender" name="gender" /> Male 
</label> 
<label class="checkbox" style="margin:-25px 0 0 100px"> 
    <input type="checkbox" value="female" id="gender" name="gender" /> Female 
</label> 

<label class="checkbox" style="margin:-20px 0 0 205px"> 
    <input checked type="checkbox" value="all" id="gender" name="gender"> All 
</label> 

我的jquery:

var gender = $('input[name=gender]:checked').map(function(){ 
    return $(this).val(); 
}).get(); 
alert(gender); 

我的问题是,例如:

当我选择把它传递给jQuery的作为'male,'的性别,但我的问题是这里的时候,我未选中的男性和检查日e女性则将其传递给jquery作为female,male,它不是通过现在选中的值来传递值和前面的值,任何一个人都可以指导我如何解决这个问题。

+0

为什么地球上你'回声'如此巨大的HTML块? – MightyPork 2014-08-31 13:25:54

+1

其实,为什么不直接使用它作为纯html?这里有0个使用php的理由。 – MightyPork 2014-08-31 13:26:25

+0

不,如果条件我删除了这里,因为这不是使问题 – Xavi 2014-08-31 13:27:57

回答

1

使用jQuery改变事件如下

$('input[name=gender]').on('change',function(){ 
    var gender = $('input[name=gender]:checked').map(function(){ 
     return $(this).val(); 
    }).get(); 
    alert(gender); 
}); 

DEMO

0

首先:一个ID必须是唯一的,只要有与相同的ID两个元素(如 “性别”) ,结果是随意的。

和:使用单选按钮,就大功告成了W/O任何JS或jQuery的:

<label class="checkbox"> 
    <input type="radio" value="male" id="gender_m" name="gender" /> Male 
</label> 
<label class="checkbox" style="margin:-25px 0 0 100px"> 
    <input type="radio" value="female" id="gender_f" name="gender" /> Female 
</label> 

<label class="checkbox" style="margin:-20px 0 0 205px"> 
    <input checked type="radio" value="all" id="gender_a" name="gender"> All 
</label> 

如果你想在收音机看起来像复选框,看到this post