我使用 niceEdit 作为 html 编辑器和 mysql 作为后端。我将使用 AJAX 将数据发送到 php 的过程。
这是我的html代码:
<div class='atabcontent'>
<form id='apostform' method='POST'>
<input name='request' type='hidden' value='atabaddnew' />
<textarea id='aposttextarea' name='area1' style='width:780px; height: 400px; margin: 10px auto 0 auto;'cols='40'></textarea>
<div style='height: 5px;'></div>
<button id='apostsubmit'>Save</button>
</form>
</div>
这是ajax代码。
$("#apostform").submit( function () {
//add a loading bar first
$('div.atabcontent').append("<img class='loading' src='media/loading.gif' />");
//send data to processor.php
$.post(
'processor.php',
$(this).serialize(),
//here, where we're going to manage the respond from the processor.php
function(data){
//remove the loading bar
$('.atabcontent img.loading').remove();
//output the respond
$('div.atabcontent').html(data).show();
});
return false;
});
和继承人的php文件(processor.php)。
<? //this a processor e.g. post, delete, edit etc..
//check if a post "request" is present..
if (isset($_POST['request']))
{
//check if what type of request, if request type is equal to atabmenu then..
if ($_POST['request'] === "atabmenu")
{
echo $_POST['data'];
}
elseif ($_POST['request'] === "atabaddnew")
{
echo htmlspecialchars($_POST['area1']);
}
//end
//else if no request then go to fail.php along with the error code of "unable to process the data"
}
else
{
header("location: fail.php?error=unable to process the data");
}
?>
正如您在上面的代码中看到的那样,它应该可以正常工作,但是来自 ajax 响应处理程序已获取的 php 文件的响应是空的,并且似乎没有数据已发送或也没有收到我试过这个
$("#apostform").submit( function () {
var data = $('#apostform textarea').val();
alert (data);
return false;
});
但是那里的警告框内容是空的,正如您在代码中看到的那样,它应该警告一个带有“#apostform”值的框。我尝试了一个普通的表单,我的意思是没有 ajax 并且它工作正常,因为我可以看到数据已被接收,因为它显示了从表单接收的数据。
希望有人可以帮助我指出这似乎是什么问题。无论如何我使用 niceEdit 文本框http://nicedit.com/
PS:我对任何建议、建议和想法都持开放态度。提前致谢。