你们都可以看到我对javascript和jquery很重要,但我对ajax请求有疑问。
这是我想做的,但我不知道如何:
content.append('<div id="box"><textarea>some content</textarea></div');
text = $('textarea').value();
转到ajax请求。类似的东西:
$.ajax({
type: "POST",
url: "/localstorage/boxes",
data: text,
contentType: "application/json; charset=utf-8",
dataType: "json"
});
然后我想将该数据调回另一个函数oldBox()
,以便在用户点击该事件时将其显示回来
更新
function saveNote(){
var theNote = $('div#note');
var textValue = $this.$('textarea').value();
var textData = JSON.stringify(textValue);
$.ajax ({
type:"POST",
url: "/localstorage/notes",
data: textData,
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function(data) {
loadNote(data);
}
});
}
这很好,它修复了我的错误但是当我尝试找到localstorage / notes文件时它是空的,它应该是空的吗?
答案 0 :(得分:1)
在你的ajax中,添加以下内容:
success: function(data) {
oldBox(data);
}
所以你的ajax看起来像这样:
$.ajax({
type: "POST",
url: "/localstorage/boxes",
data: text,
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function(data) {
oldBox(data);
}
});
这假设您的oldBox()
函数与此类似:
function oldBox(data) {
$('.whatever').html(data);
}
但是,您也可以将此行($('.whatever').html(data);
)添加到success:
。
在/localstorage/boxes
中,您需要回显出ajax要检索的内容。
例如:
text = "Hello";
// text -> /localstorage/boxes
/localstorage/boxes echoes out 'Hi to you to!'
// /localstorage/boxes -> original page
oldBox('Hi to you to!');
答案 1 :(得分:0)
我希望能提供帮助,我认为问题在于您的成功:
function saveNote(){
var theNote = $('div#note');
var textValue = $this.$('textarea').value();
var textData = JSON.stringify(textValue);
$.ajax ({
method:'POST',
url: '/localstorage/notes',
type: 'POST',
data: textData,
contentType: 'application/json; charset=utf-8',
dataType: 'json'
success: function(data) {
loadNote(data);
}
}).success(function(data) {
loadNote(data);
});
}
如果这不起作用
function saveNote(){
var theNote = $('div#note');
var textValue = $this.$('textarea').value();
var textData = JSON.stringify(textValue);
$.ajax ({
method:'POST',
url: '/localstorage/notes',
type: 'POST',
dataType: 'json'
success: function(data) {
loadNote(data);
}
}).done(function(data) {
loadNote(data);
});
}
答案 2 :(得分:0)
你的例子都没有用,但我找到了解决方案,这里是:)
jQuery的:
$(document).on("click", "#save", function(event) {
var note = $(this).parent().parent().children("textarea").val();
$.post( "main.php", { note: note });
});
PHP:
<?
$json = $_POST['note'];
$form = json_decode( $json, true);
print_r($form);
?>