一旦验证运行,就会失败,并继续重定向到相同的控制器索引。
if (!$this->form_validation->run())
{
$this->index();
}
该窗体是一个简单的两个下拉列表,一个依赖于另一个,但是一旦重新加载视图,第二个依赖下拉列表将停止工作。
这是 JS
$(document).ready(function()
{
$('#manufacturer_dropdown').change(function()
{
$("#sw_names > option").remove();
var id = $('#manufacturer_dropdown').val();
$.ajax({
type: "POST",
url: "software/get_software_names/"+id,
datatype : "JSON",
success: function(sw_names)
{
$.each(sw_names,function(id,software_name)
{
var opt = $('<option />');
opt.val(software_name);
opt.text(software_name);
$('#sw_names').append(opt);
});
}
});
});
});
如果我手动刷新页面,下拉菜单会再次工作。不确定发生了什么,也许文档就绪功能停止检查或其他什么。我不是JS专家...
如果需要,我可以发布更多代码。
编辑:我的JS网址缺少/
现在工作
如果你正在发出一个 ajax 请求,你必须给出一个 ajax 响应
您不能在这样的请求中间重定向页面。
我已经写了一些东西来解决这个问题,因为它是如此普遍。希望这会引导您前进:http://codebyjeff.com/blog/2013/04/how-do-i-use-ajax-with-framework-x