【发布时间】:2014-07-02 09:51:02
【问题描述】:
我正在使用 CodeIgniter 和 jQuery .ajax 函数将数据从我的视图发送到我的控制器并更新我的数据库。这是问题所在,我使用form_open() 为我的表单生成代码,我需要使用它以便在我的控制器中我可以使用表单验证库。表单验证库仅在您使用“POST”方法时才有效。但别管这一切。
如果我使用普通的提交按钮将我的表单提交给控制器,一切都会正常工作。但是我不知道在这种情况下如何使用 ajax,我应该在 $.ajax({ url: ??? }); 中输入什么 我需要 ajax 将数据发布到控制器,就像我的表单中的普通提交按钮一样。我认为在我的情况下,ajax 函数不会像常规提交按钮那样向控制器发送请求。
这是我的表单(我按目的省略了内联样式和类):
HTML
<div class="" style="">
<h1 id="header" class="">Login/Register</h1>
<?php echo form_open('users/sportappregister', 'data-ajax="false"'); ?>
<div style=""><input id="email" type="text" name="email" value="email" style=""></div>
<div style=""><input id="pass" type="text" name="password" value="password" style=""></div>
<div style="" class=""><img class="" style="" src="<?php echo img_path(); ?>ikone/fb_login_icon.png" />Login with Facebook</div>
<div id="send" style="" class=""><input type="submit"> Submit </div>
<div id="cancel" style="" class=""> Cancel </div>
</form>
</div>
jQuery
document ready etc...
$("#send").click(function() {
$.ajax({
url: "/public/index.php/users/sportappregister",
type: "POST",
data: {email: $("#email").val(), password: $("#pass").val()},
dataType: "text",
success: function(msg){$("#header").css({"color":"red"}).html(msg);}
});
我不需要向您展示我的控制器,因为那里一切正常,问题仅在我的表单页面中。数据未正确发布到控制器。
【问题讨论】:
-
我认为您的网址有问题。您可以使用浏览器控制台来跟踪 ajax 请求的错误。
-
首先,您可以将静态值发布到您的控制器,然后检查是否发布?
-
可能是控制器实现了一些身份验证
标签: php jquery ajax codeigniter