我正在尝试从我的div中获取数据并将其添加到php文件中: 我的javascript是:
$(document).ready(function(){
$('#save').on('submit',function(e) {
var bufferId = document.getElementById('data2save');
$.ajax({
url:'saver.php',
data:{id : bufferId},
type:'POST',
success:function(data){
console.log(data);
alert("ok"); //=== Show Success Message==
},
error:function(data){
alert("not ok"); //===Show Error Message====
}
});
e.preventDefault(); //=== To Avoid Page Refresh and Fire the Event "Click"===
});
});
我的HTML部分是:
<input type="button" value="save" id="save">
<div id="data2save">
Data to be added.
</div>
我的saver.php文件是:
<?php
$data = $_POST['id'];
if (($fp = fopen("test.txt", "w"))){
fwrite($fp,$data);
fclose($fp);
echo "ok";
}
?>
有人可以指出这个问题吗?
答案 0 :(得分:1)
您的选择器错误,请将document.getElementById('info1');
替换为var bufferId = $("#data2save").html();
$(document).ready(function(){
$('#save').on('submit',function(e) {
var bufferId = $("#data2save").html();
$.ajax({
url:'saver.php',
data:{id : bufferId},
type:'POST',
success:function(data){
console.log(data);
alert("ok"); //=== Show Success Message==
},
error:function(data){
alert("not ok"); //===Show Error Message====
}
});
e.preventDefault(); //=== To Avoid Page Refresh and Fire the Event "Click"===
});
});
答案 1 :(得分:0)
document.getElementById(&#39; data2save&#39;)是一个DOM元素。您不能将其作为数据直接发送到AJAX请求中。
将其替换为 document.getElementById(&#39; data2save&#39;)。value ,然后告诉我们是否有效。
新的javascript就像这样
(document).ready(function(){
$('#save').on('submit',function(e) {
var bufferId = document.getElementById('data2save').value;
$.ajax({
url:'saver.php',
data:{id : bufferId},
type:'POST',
success:function(data){
console.log(data);
alert("ok"); //=== Show Success Message==
},
error:function(data){
alert("not ok"); //===Show Error Message====
}
});
e.preventDefault(); //=== To Avoid Page Refresh and Fire the Event "Click"===
});
});