Jquery 从ajax post返回结果
我正在构建一个收藏夹工具,用户可以在其中为他们的收藏夹创建组。您可以通过复选框将收藏夹添加到组中。这一切都很好,但有一点我想补充的是,当你创建一个新组时,该新组会出现在现有列表中,并带有一个未选中的复选框 使用jQuery,返回用户作为POST回调添加到groups表的最后一条记录的最佳方法是什么 JS:Jquery 从ajax post返回结果,jquery,Jquery,我正在构建一个收藏夹工具,用户可以在其中为他们的收藏夹创建组。您可以通过复选框将收藏夹添加到组中。这一切都很好,但有一点我想补充的是,当你创建一个新组时,该新组会出现在现有列表中,并带有一个未选中的复选框 使用jQuery,返回用户作为POST回调添加到groups表的最后一条记录的最佳方法是什么 JS: $('.add_new_group').click(function(){ //var $add_new_group = $(this); var user_id = $(do
$('.add_new_group').click(function(){
//var $add_new_group = $(this);
var user_id = $(document.body).attr('data-user-id');
var new_group = $('.new_group').val();
var data = {
'user_id' : user_id,
'new_group' : new_group
}
var url = "/wp-content/themes/testheme/action/new-group.php";
$.ajax({
type: "POST",
url: url,
data: data,
success: function(data) {
$('#new_group_container').html();
}
});
});
new-group.php
include('inc_db.php');
$user_id = $_POST['user_id'];
$new_group = $_POST['new_group'];
$check_records=mysql_query("SELECT user_id FROM tpl_groups WHERE user_id='$user_id' AND group_name='$new_group'");
$num_rows=mysql_num_rows($check_records);
if($num_rows < 1){
$query="INSERT INTO tpl_groups (user_id, group_name) VALUES ('$user_id', '$new_group')";
mysql_query($query) or DIE (mysql_error());
}
mysql_close();
首先,我会小心这样暴露你的后端。你可以编辑对问题不重要的任何内容 如果是使用脚本创建的组的名称,那么在success方法中不使用新的_group值有什么原因吗?像这样:
success: function(data) {
$('#yourtable').append('<tr><input type="checkbox">' + new_group + '</tr>');
}
如果您希望从脚本中获取该数据,可以打印可在success函数中使用的数据。比如说,
<?php
echo $new_group;
?>
但是,前者可能更简单。有一个表包含组名和用户id,还有一个表包含组id和收藏夹id。因此,要将收藏夹添加到组中,我需要一个组id。我可以使用组名而不是id,但我更喜欢与数字关联,您需要使用相关组名查询该组id,才能在new-group.php中找到它。一旦你有了ID,你就可以像我文章中的第二个例子那样打印出来。