我一直在使用php/CI进行编码,现在我已经开始掌握它了,但我试图让跳跃使用jQuery +一些Ajax的东西,我似乎无法得到它上班。这就像剧本甚至没有被看到。首先尝试在ajax上看不到脚本?
我想要做的是当用户点击提交按钮时调用java/test函数。我想添加一些类似if(ajax)的东西,这就是为什么我在表单数据中有这样的地方,但没有遮罩它所谓的提交函数 - 我添加了返回false,因此它不会触发submit函数,但它仍然是。
这是我的代码,任何帮助将是伟大的。由于
java.php //控制器
<?php
class Java extends Controller{
function index(){
$this->load->view('java_view');
}
function submit(){
$one = $this->input->post('one');
$two = $this->input->post('two');
echo $one;
}
function test(){
$one = $this->input->post('one');
$two = $this->input->post('two');
echo $two;
}
}
java_view.php // viewfile
<html>
<header>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>
<script type="javascript">
$(document).ready(function(){
$('#submit').click(function(){
var form_data = {
one: ('#one').val(),
two: ('#two').val(),
ajax: '1',
};
$.ajax({
url: "<?php echo site_url('java/test'); ?>",
type: 'POST',
data: form_data,
success: function() {
alert('success');
}
});
return false;
});
});
</script>
</header>
<body>
<?php
echo form_open('java/submit');
//setting up the fields
$form_data = array(
'name' => 'one',
'id' => 'one',
);
echo "<p> One </p> <br/>";
echo form_input($form_data);
$form_data = array(
'name' => 'two',
'id' => 'two',
);
echo "<br/> <p>Two</p> <br/>";
echo form_input($form_data);
$form_data = array(
'name' => 'submit',
'id' => 'submit',
'value' => 'Submit',
);
echo "<br/>";
echo form_submit($form_data);
echo form_close();
感谢您的支持,但并不完全符合我的要求(我的错误并不明确)如果您可以再看一次,我编辑了我的帖子。也添加了返回错误位。谢谢 – tshauck 2010-07-26 19:30:49
@tshauck:请看我更新的答案。请尝试更新的代码。 – Sarfraz 2010-07-26 19:33:40
嗨,我已经试过了代码,它仍然发射提交功能,因为它会如果点击没有JavaScript。 – tshauck 2010-07-26 19:49:28