0

我正在尝试创建类别的动态下拉列表,并且在选择此类别时应出现子类别下拉列表。我已经使用 OOP PHP 完成了这项工作,但在使用 codeigniter 时真的很艰难。

首先,我创建了这个类别下拉列表

<?php 
$js =' onChange="callAjaxFunction(this.value)"';
echo form_dropdown('category', $categories, null, $js); ?> 

显示子类别的 Javascript

<script>
// JavaScript Document
var enableCache = false;
var jsCache = new Array();
var AjaxObjects = new Array(new sack(),new sack());

function ShowContent(divId,ajaxIndex,url)
{       
    document.getElementById(divId).innerHTML = AjaxObjects[ajaxIndex].response;
    if(enableCache){
        jsCache[url] =  AjaxObjects[ajaxIndex].response;
    }
    AjaxObjects[ajaxIndex] = false;
 document.getElementById("ajax_container").innerHTML = '';

}

function ShiftChanger(divId,url,id) {
    //to show the div
    document.getElementById(divId).innerHTML="";
    if(enableCache && jsCache[url]){
        document.getElementById(divId).innerHTML = jsCache[url];
        return;
    }   
    var ajaxIndex = AjaxObjects.length;

    AjaxObjects[ajaxIndex] = new sack();
    AjaxObjects[ajaxIndex].requestFile = url+"?id="+id;
    document.getElementById("ajax_container").innerHTML = '<img    src=ajax_loader.gif hspace=10 vspace=10 />';     AjaxObjects[ajaxIndex].onCompletion = function(){ ShowContent(divId,ajaxIndex,url+"?id="+id);};
    AjaxObjects[ajaxIndex].runAJAX();
 }

function callAjaxFunction(value)
{   

    ShiftChanger('shiftcontainer','ajax_category.php',value);
 }


  </script>

但这不起作用。如您所见,ajax_category.php 无法通过。我认为应该用控制器来完成,我也尝试过,但似乎没有任何效果。我真的坚持这一点。请任何帮助不大的人。真的对此感到沮丧:(。

4

0 回答 0