0
我试图让一个HelloWorld类节目与REST CI/jQuery的工作。我包括我的(确实简陋)REST控制器,查看文件和JavaScript文件,我希望这是一直困扰我的错误在你跳出。REST笨,jQuery的/ AJAX不显示响应
两个问题:
- 我从服务器获取的响应不会被显示 - 画面被刷新,而不是(我知道这是我错过了一些非常基本的东西)。如果我单步执行代码,则会看到结果的显示,但屏幕会刷新。不知何故,我无法进入我的“成功”功能。为什么,哦,为什么?
2.成功后,我想将用户重定向到另一个网址,例如www.google.com。我会在JavaScript文件中执行此操作吗?或服务器端?
预先感谢您对我的帮助!
[增加了解决问题后:我的问题无关,与REST或笨。一个纯粹的JavaScript的问题] 其余控制器:
<?php
require APPPATH.'/libraries/REST_Controller.php';
class Myex extends REST_Controller {
function contact_post(){
$result=array();
$fname=$this->post('fname');
$lname=$this->post('lname');
$result['message']="contact_post has your name";
$result['fname']=$fname."XX";
$result['lname']=$lname."YY";
$this->response($result,200);
}
}
?>
视图文件:
<?php $this->load->view('includes/header')?>
<div id="input-div">
<form name="cookieform" id="login" method="post">
First Name: <input type="text" name="fname" id="fname" class="text"/>
Last Name: <input type="text" name="lname" id="lname" class="text"/>
<input type="submit" name="submit" value="Submit" id='submit' class="page"/>
</form>
</div>
<div id="resp-div">
response goes here
</div>
<?php $this->load->view('includes/footer')?>
JavaScript文件:
function postsuccess(output) {
$('#soln-div').html(output.message +'for user '+output.fname+' whose last name is '+output.lname).show('slow');
}
function post_contact() {
$('#submit').click(function(){
var output;
var fdata,res;
var furl=global_siteurl+'/myex/contact';
var fname=$('#fname').val();
var lname=$('#lname').val();
fdata='fname='+fname+'&lname='+lname;
res=$.ajax({
url: furl,
type: 'POST',
dataType: 'json',
data:fdata,
success: function(output) {
postsuccess(output);
}
});
});
}
$(document).ready(function() {
get_contact();
post_contact();
});
谢谢谢谢谢谢你重定向到任何URL在JavaScript!结果发现*与REST没什么关系,一切都与我可怜的JavaScript技能有关。非常感谢,沙燕! – user1072910 2012-03-29 19:29:45
很高兴帮助你... :) – 2012-03-30 05:50:40