[英]$.post, radio button value, jquery
I have trouble to pass radio button value by using $.post can anyone help me find out the problems? 我无法通过使用$ .post传递单选按钮值。任何人都可以帮我找出问题吗?
i got Undefined index:gender 我得到了未定义的索引:性别
<?php
$gender = $_POST['gender'];
if (!$gender) {
echo $gender;
}
?>
<script type="text/javascript">
function get(){
$('#error').hide();
$.post(
'signup.php',
{ gender:signup.gender.value },
function(output){
$('#error').html(output).fadeIn(100);
}
)
}
</script>
<form name="signup">
<input class="radio" type="radio" name="gender" value="male"/> Male<br/>
<input class="radio" type="radio" name="gender" value="female"/> Female
<input type="button" value="submit" onclick="get();" />
</form>
<div id="error"></div>
Try changing this line: 尝试更改此行:
{ gender: signup.gender.value }
To this: 对此:
{ gender: $('.radio').val() }
Of if you wish to keep it as vanilla javascript, you need to explicitly use the forms
collection: 如果您希望将其保留为vanilla javascript,则需要明确使用
forms
集合:
{ gender: document.forms['signup'].gender.value }
You can use jquery serialize for forms: 您可以对表单使用jquery序列化:
//Form data:
var aData = $('#formID').serializeArray();
//Create param string:
var sSend = $.param(aData);
//Call ajax:
$.post('signup.php', sSend, function(sData){
...
});
or for the value: 或者价值:
$('input[name=gender]:checked').val();
and in your php better: 并在你的PHP更好:
$gender = isset($_POST['gender']) ? $_POST['gender'] : '';
Try this... 尝试这个...
{ gender: $('.radio [name="gender"]').val() }
Greetings. 问候。
i just found the answer 我刚刚找到了答案
$('input:radio[name=gender]:checked').val()
thanks for everyone's help! 谢谢大家的帮助!
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.