我有两个单选按钮
<div align="center" class="radio_group">
<input type="radio" id="gallerymenustyle1" class="element radio" name="gallerymenustyle[]" value="1" /> Gallery Link - In the navigation of my website, display one "gallery" link<br />
<input type="radio" id="gallerymenustyle2" class="element radio" name="gallerymenustyle[]" value="2" /> Category Links - In the navigation of my website, display a separate link to each category.
</div>
如果我点击其中一个单选按钮而不点击提交按钮,如何更新一行中的一个字段?
这是我到目前为止所拥有的
$(function(){
$(':radio').click(function(){
if($(this).is(':checked'))
{
var galleryMenuStyleVal = $(this).val();
$.ajax({
type: 'POST',
url: '<?php echo BASE_URL; ?>ajax/ajax_methods_gallery.php',
data: 'showGalleryMenuStyleFromEditPage=' + galleryMenuStyleVal
});
}
});
});
if($_POST['showGalleryMenuStyleFromEditPage'] !== null || $_POST['shoGalleryMenuStyleFromEditPage'] !== 0){
$userObj = new User();
if($_POST['showGalleryMenuStyleFromEditPage'] == 1){
$query = "UPDATE users SET gallery_menu_style = 1";
$userObj->updateUserGalleryMenuStyle($query);
} else if ($_POST['showGalleryMenuStyleFromEditPage'] == 2){
$query = "UPDATE users SET gallery_menu_style = 2";
$userObj->updateUserGalleryMenuStyle($query);
}
}
是我的jquery正确包括PHP的一些部分?因为它不起作用
答案 0 :(得分:1)
在这一行:
if($_POST['showGalleryMenuStyleFromEditPage'] !== null || $_POST['shoGalleryMenuStyleFromEditPage'] !== 0){
您在第二个$ _POST值上使用了'shoGalleryMenuStyleFromEditPage'而不是'showGalleryMenuStyleFromEditPage'。因此,它不允许任何东西通过初始if语句。
您还使用了!== 0
代替!= 0
。
这就是为什么使用短按键/名字并不是一个坏主意......
如果它仍然不起作用,请使用Firebug确定您的jQuery是否实际发送了任何内容。