Php 通过ajax向服务器发送表单数据
我是ajax新手,想列一张待办事项清单 对于add form submit method(),我有一个if-else。else可以工作并在其情况下向我发出警报,但如果不工作,我认为是关于我的post方法 顺便说一下,这是我的jquery代码:Php 通过ajax向服务器发送表单数据,php,jquery,ajax,ajaxform,Php,Jquery,Ajax,Ajaxform,我是ajax新手,想列一张待办事项清单 对于add form submit method(),我有一个if-else。else可以工作并在其情况下向我发出警报,但如果不工作,我认为是关于我的post方法 顺便说一下,这是我的jquery代码: $('#add_task').submit(function(event) { /* stop form from submitting normally */ event.preventDefault(); var title = $('#task_ti
$('#add_task').submit(function(event) {
/* stop form from submitting normally */
event.preventDefault();
var title = $('#task_title').val();
if(title){
//ajax post the form
$.post("/add", {title: title}).done(function(data) {
$('#add_task').hide("slow");
$("#task_list").append(data);
});
}
else{
alert("Please give a title to task");
}
});
当我点击AddBTN时,控制台输出显示404NotFound错误,并参考我下载的jquery主文件的这一行:它是:
这是我的控制器:
public function postAdd() {
if(Request::ajax()){
$todo = new Todo();
$todo->title = Input::get("title");
$todo->save();
$last_todo = $todo->id;
$todos = Todo::whereId($last_todo)->get();
return View::make("ajaxData")
->with("todos", $todos);
}
}
我的路线是:
Route::controller('/', 'TodoController');
感谢您抽出时间我想您在拉雷维尔的路线有问题。此路由应在以下情况下工作:
Route::post('add/',array('uses' => 'TodoController@add'));
将“提交按钮”更改为简单按钮,并更改如下
$('#add_task').click(function() {
var titleField = $('#task_title');
if(titleField.length > 0){
$.post("/add", {title: titleField.val()}).done(function(data) {
$('#add_task').hide();
$("#task_list").append(data);
});
} else {
alert("Please give a title to task");
}
return false;
});
404 AJAX中的HTTP状态错误仅与发送数据的URL相关。用后端可以处理的东西更改
/add
,比如一个简单的PHP文件,因为/add
意味着您需要进行一些htaccess/nginx重写
无论如何,这是一个简单的教程,我将否决你从以下位置复制声称属于你的代码:
您应该执行如下简单的ajax请求:
$.ajax({ url : 'ajax.php', data: {title:title}, type: 'POST', success:
function(response) {
// exec success code
}
});
如果你对编程一无所知,就永远不要做网络教程,因为你永远也无法让它们发挥作用。这只是一个简单的php文件,您需要对其进行编码,并从Route::controller中的教程中更改其url,但是,该教程对于待办事项列表来说太复杂了。我只是通过更改以下内容来修复它:
$.post("/add", {title: title})
致:
它没有找到localhost://add 所以我给了它一个完整的地址
感谢所有回复如果显示404错误,则不会显示
/add
urlfound@adeneo:谢谢你的回复。我用了教程。。所以我认为所有与jquery版本和我上面写的jquery代码相关的东西。你对url有什么想法?它应该是什么?嗯,它应该是一个有效的URL,指向响应的内容,没有什么神奇的,如果你有一个URL,服务器在调用该URL时必须响应。@adeneo:我添加了我的代码。请再次检查我的问题。谢谢
$.post("/add", {title: title})
$.post("http://localhost/Blueprints/to-doListWithAjax/public/index.php/add", {title: title})