2012-10-29 155 views
0

我有一个控制器加载一个视图插入记录到数据库。该视图包含下拉选择。所以,当这个观点被载入我要检查的下拉列表的选择的价值,做这样的事情:Codeigniter表单提交

if($this->input->post('my_select') == FALSE) 
{ 
    //do something 
} 
else 
{ 
    //do something else 
} 

所以,当这下拉得到改变我要重新加载此,并再次检查。我想根据选择哪个值来显示视图。所以我想使用onChange =“this.form.submit()”,但不幸的是这在Codeigniter中不起作用。

所以我的问题是简单的如何做到这一点?

+0

Stackoverflow是针对特定的编程问题。但是这里有三个问题:i)解释MVC模型的目的ii)如何使用JavaScript提交HTML表单iii)如何使用CodeIgniter处理表单提交。考虑让你的问题更具体和更清晰。 – mtmacdonald

+0

非常感谢......但我知道如何使用Javascript提交表单......问题在于“this.form.submit()”在CI中不起作用。我还提到模型,因为我认为我错过了那里的东西。 – user568021

+0

“不起作用”是什么意思? JavaScript submit()方法在客户端(浏览器)中运行 - CI在服务器上运行,两者完全独立。服务器是否正确接收来自浏览器的请求? – mtmacdonald

回答

2

你很可能想要使用某种AJAX调用来请求控制器并正确放置数据。使用jQuery

例子:

$('#element').change(function() 
{ 
    $.post('index.php/endpoint', function(data) 
    { 
     // do something here. 
     $('#another_element').html(data); 
    } 
} 

你的控制器能拍摄出什么,但我更希望它会是JSON数据。这样你可以运行JSON.parse()就可以了。

+0

好的...我得到这个..即使我不使用jQuery,我可以简单地创建一个函数并在其中放入一个Ajax请求。 – user568021