将AJAX发送到PHP,更新DB,获取新JSON
我有以下代码:将AJAX发送到PHP,更新DB,获取新JSON,php,jquery,ajax,json,Php,Jquery,Ajax,Json,我有以下代码: $(document).ready(function() { $.getJSON('model.php',function(data) { $('h1').append(data['event']); $('.img-circle').attr('src',data['image']) $('a').attr('href',data['url']); var eventname = data['event']; $('.starter-templ
$(document).ready(function() {
$.getJSON('model.php',function(data) {
$('h1').append(data['event']);
$('.img-circle').attr('src',data['image'])
$('a').attr('href',data['url']);
var eventname = data['event'];
$('.starter-template').on("swipeleft",function() {
var events = {'event': eventname};
$.ajax({
type: "POST",
url: "getchoices.php",
dataType: 'json',
data: {event: JSON.stringify(eventname) }
});
})
})
})
它需要一次滑动,并将数据发送到数据库。然后,数据库中的更改会更新model.php JSON,我希望随后将新值读入文档,但我一直在讨论如何做到这一点。最初,我重复了最初的部分,如下所示:
$(document).ready(function() {
$.getJSON('model.php',function(data) {
$('h1').append(data['event']);
$('.img-circle').attr('src',data['image'])
$('a').attr('href',data['url']);
var eventname = data['event'];
$('.starter-template').on("swipeleft",function() {
var events = {'event': eventname};
$.ajax({
type: "POST",
url: "getchoices.php",
dataType: 'json',
data: {event: JSON.stringify(eventname) }
});
$.getJSON('model.php',function(data) {
$('h1').append(data['event']);
$('.img-circle').attr('src',data['image'])
$('a').attr('href',data['url']);
var eventname = data['event'];
})
})
})
})
但这似乎总是将相同的
数据['event']
发送到PHP,而不是每次都更改。您在每次刷卡时都像这样指定eventname:
$.getJSON('model.php',function(data) {
$('h1').append(data['event']);
$('.img-circle').attr('src',data['image'])
$('a').attr('href',data['url']);
var eventname = data['event'];
})
问题是,您不需要更改已定义的全局eventname变量
在上面将代码(第二个$.getJSON)更改为以下内容应该可以完成这项工作:
$.getJSON('model.php',function(data) {
...
eventname = data['event']; // omit var
})
为什么不创建干净的setter和getter函数呢?1从DB获取数据1向DB发送数据。您只需将这些函数附加到您想要的任何滑动点击事件。