我正在使用jQuery和CodeIgniter来执行此操作。好吧基本上我有一个注册表格,要求用户输入用户名,密码和电子邮件。提交表单后,jQuery将序列化表单并将其提供给进程页面,在控制器中回显值,然后javascript将提醒原始视图中的post值。到目前为止它没有用。什么都没有被警告。这是我的代码:
(控制器) register.php:
<?php if (!defined('BASEPATH'))
exit('No direct script access allowed');
class Register extends CI_Controller
{
public function step1()
{
$this->load->view('registration_step1');
}
public function step1_process(){
var_dump($_POST);
}
public function step2()
{
$this->load->view('registration_step2');
}
public function step3()
{
$this->load->view('registration_step3');
}
}
(视图的一部分) registration_step1.php:
<form style="margin-top: 100px;" class="registerbox">
<h2>User Info:</h2>
<input type="text" name="username" placeholder="Username" style="height:35px; width: 300px;font-size:20px;"/> <br />
<input type="text" name="email" placeholder="Email" style="height:35px; width: 300px;font-size:20px;"/><br />
<input type="password" name="password" placeholder="Password" style="height:35px; width: 300px;font-size:20px;"/><br />
<input type="submit" class="btn btn-success" style="height:35px; width: 310px;font-size:20px;margin-bottom:5px;" value="Next »"/><br />
</form>
(javascript)registration.js:
$(document).ready(function() {
$(".registerbox").submit(function() {
var userinfo = $(".registerbox").serialize();
return false;
$.post("register/step1_process", {
userinfo : userinfo
},
function(data) {
alert(data);
});
});
});
答案 0 :(得分:1)
在你的html标记中,在<head>
的某个地方,你应该输入类似的内容:
<script type="text/javascript">
var base_url = '<?php echo base_url(); ?>';
</script>
然后在registration.js
中,更改您的网址并在返回之前执行post
:
$(document).ready(function() {
$(".registerbox").submit(function() {
var userinfo = $(".registerbox").serialize();
$.post(base_url + "register/step1_process", {
userinfo : userinfo
}, function(data) {
console.log(data);
});
return false;
});
});
答案 1 :(得分:0)
您只需将帖子网址更改为:
'your-controller/your-function'
在你的情况下,它将是:
'register/step1'
您还需要更改发送数据的方式。 jquery期望一个'数据'对象。所以完整的帖子应该是。
$.post("register/step1", {
data : userinfo
},
function(data) {
alert(data);
});
关于jQuery帖子的更多信息: http://api.jquery.com/jQuery.post/