我使用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:我打开任何建议,推荐和想法。提前谢谢。答案 0 :(得分:1)
您的提交功能似乎有一些语法错误
$("#apostform").submit( function () {
var data = $('#apostform textarea').val(); // missing equals sign and closing apostrophe
alert (data);
return false;
});