隐藏DIV点击按钮与MySQL后,
我想隐藏一个“DIV”一个按钮被点击之后。我不想用一个.remove(),因为当您刷新应用它回来。我有div的,数据库这个信息,我想工作它。
我试图创建已经Ajax调用来选择我看,然后在前端,如果它存在,然后将其删除我说的是信息。但我觉得我失去了一些东西,我不知道为什么。
前端:
$('#deletePromo').on('click', function(res){
let success = function(res){
if (eventName && customerID){
$(`#promotion-container .promo${i}`).remove();
}
}
$.ajax({
type: 'POST',
url: '/api/promotions-done',
crossDomain: true,
//success: success,
dataType: 'json',
data: {
customerID : customerID,
eventName : eventName,
}
}).done(function(res){
console.log('res', res)
if (res != null){
$(`#promotion-container .promo${i}`).remove();
//$(`#promotion-container .promo${i}`).css('display', 'none')
}
})
})
})
后端:
router.post('/promotions-done', function(req, res) {
let customerID = req.user.customer_id
let restaurantGroupId = req.user.restaurant_group_id
let eventName = req.body.eventName
db.task(t => {
return t.any(`SELECT * FROM promotions_redemption WHERE (customer_id = '${customerID}' AND event_name = '${eventName}' AND restaurant_group_id = ${restaurantGroupId})`).then(function(promotionsDone) {
return res.json({'promotionsDone': promotionsDone})
})
.catch((err) =>{
console.log(err)
})
})
})
我想在这里做的是说,如果在客户和eventName的桌子上已经存在,然后从身上取出股利。我没有与后端工作经验,很多这样有没有办法告诉程序来检查数据库的信息,如果它存在然后取出股利。
回答如下:你可能有一个模板文件中的一些HTML,或在具有有按钮启动与数据库。由于您的AJAX代码单击按钮时才会运行,你需要做任何的1 2两件事:
- 添加在页面加载AJAX调用
- 手柄寻找键和隐藏/显示它在你的模板语言/平台(认为asp,蟒蛇Django的,PHP laravel等),以避免AJAX请求。
因为我们不知道你的平台,我会告诉你选择1
首先,我会改变你的HTML的初始状态不显示默认的按钮。这将是这个样子:
<div id="promotion-container">
<button class="promo" style="display: none" />
</div>
否则,你将有按钮显示为时间的AJAX请求花费的金额。
接下来,你会希望这个函数调用添加到页面中。我已经扭转在完成功能登录到“显示”按钮或取消它。
$(document).ready(function(){
let success = function(res){
if (eventName && customerID){
$(`#promotion-container .promo${i}`).remove();
}
}
$.ajax({
type: 'POST',
url: '/api/promotions-done',
crossDomain: true,
//success: success,
dataType: 'json',
data: {
customerID : customerID,
eventName : eventName,
}
}).done(function(res){
console.log('res', res)
if (res === null){
//$(`#promotion-container .promo${i}`).remove();
$(`#promotion-container .promo${i}`).css('display', 'block')
}
})
})
})
隐藏DIV点击按钮与MySQL后,
我想隐藏一个“DIV”一个按钮被点击之后。我不想用一个.remove(),因为当您刷新应用它回来。我有div的,数据库这个信息,我想工作它。
我试图创建已经Ajax调用来选择我看,然后在前端,如果它存在,然后将其删除我说的是信息。但我觉得我失去了一些东西,我不知道为什么。
前端:
$('#deletePromo').on('click', function(res){
let success = function(res){
if (eventName && customerID){
$(`#promotion-container .promo${i}`).remove();
}
}
$.ajax({
type: 'POST',
url: '/api/promotions-done',
crossDomain: true,
//success: success,
dataType: 'json',
data: {
customerID : customerID,
eventName : eventName,
}
}).done(function(res){
console.log('res', res)
if (res != null){
$(`#promotion-container .promo${i}`).remove();
//$(`#promotion-container .promo${i}`).css('display', 'none')
}
})
})
})
后端:
router.post('/promotions-done', function(req, res) {
let customerID = req.user.customer_id
let restaurantGroupId = req.user.restaurant_group_id
let eventName = req.body.eventName
db.task(t => {
return t.any(`SELECT * FROM promotions_redemption WHERE (customer_id = '${customerID}' AND event_name = '${eventName}' AND restaurant_group_id = ${restaurantGroupId})`).then(function(promotionsDone) {
return res.json({'promotionsDone': promotionsDone})
})
.catch((err) =>{
console.log(err)
})
})
})
我想在这里做的是说,如果在客户和eventName的桌子上已经存在,然后从身上取出股利。我没有与后端工作经验,很多这样有没有办法告诉程序来检查数据库的信息,如果它存在然后取出股利。
回答如下:你可能有一个模板文件中的一些HTML,或在具有有按钮启动与数据库。由于您的AJAX代码单击按钮时才会运行,你需要做任何的1 2两件事:
- 添加在页面加载AJAX调用
- 手柄寻找键和隐藏/显示它在你的模板语言/平台(认为asp,蟒蛇Django的,PHP laravel等),以避免AJAX请求。
因为我们不知道你的平台,我会告诉你选择1
首先,我会改变你的HTML的初始状态不显示默认的按钮。这将是这个样子:
<div id="promotion-container">
<button class="promo" style="display: none" />
</div>
否则,你将有按钮显示为时间的AJAX请求花费的金额。
接下来,你会希望这个函数调用添加到页面中。我已经扭转在完成功能登录到“显示”按钮或取消它。
$(document).ready(function(){
let success = function(res){
if (eventName && customerID){
$(`#promotion-container .promo${i}`).remove();
}
}
$.ajax({
type: 'POST',
url: '/api/promotions-done',
crossDomain: true,
//success: success,
dataType: 'json',
data: {
customerID : customerID,
eventName : eventName,
}
}).done(function(res){
console.log('res', res)
if (res === null){
//$(`#promotion-container .promo${i}`).remove();
$(`#promotion-container .promo${i}`).css('display', 'block')
}
})
})
})