我有一个带有不同id的广播标签列表(post-1,post2等)。
我试图通过点击广播来预先获取具有特定帖子ID的请求。 这是html:
$("#pro").click(function(){
var post = $(this).val();
alert(post);
$.get("<?php echo get_template_directory_uri(); ?>/jquery.php",{type: 'post', userid :'<?php echo get_current_user_id();?>', postid: '<?php echo $post->ID; ?>', pro : "pro"},function(data,status){
alert("Data: " + data + "\nStatus: " + status);
});
});
<input type = "radio" value = "<?php echo $post->ID;?>" class="pro-radio" name="pro-<?php echo $post->ID;?>" id="pro" <?php echo $GLOBALS['lock']; ?> <?php echo $pro_select; ?>> <label for="pro" class="pro-radio" >pro</label>
这是jquery:
当我按下其中一个时,所有无线电都会调整jquery。
谢谢。
答案 0 :(得分:0)
我认为你还原了名字和ID, 试试这个HTML
<input type = "radio" value = "<?php echo $post->ID;?>" class="pro-radio" id="pro-<?php echo $post->ID;?>" name="pro" <?php echo $GLOBALS['lock']; ?> <?php echo $pro_select; ?>> <label for="pro" class="pro-radio" >pro</label>
答案 1 :(得分:0)
尝试为每个单选按钮添加一个不同的类,并按类名选择 var post = $(&#39; .className&#39;)。val(); 警报(POST);
答案 2 :(得分:0)
我认为您的HTML有点奇怪。您的无线电使用相同的id
但不同的name
属性。假设你有这个HTML:
<input type="radio" name="pro" value="1" id="pro-1"> <label for="pro-1">pro 1</label>
<input type="radio" name="pro" value="2" id="pro-2"> <label for="pro-2">pro 2</label>
<input type="radio" name="pro" value="3" id="pro-3"> <label for="pro-3">pro 3</label>
然后使用此JS获取所选值:
$('input[name=pro]').change(function() {
if ($(this).is(':checked')) {
alert($(this).val());
}
});
请注意,无线电是由(相同的)name
选择的,而不是(不同的)id
选择的。然后你必须使用.is(':checked')
验证当前元素是否是所选元素,如果通过键盘输入选择元素,最后我使用change()
而不是click()
。