+ -
当前位置:首页 → 问答吧 → 一个ajax 的联动菜单

一个ajax 的联动菜单

时间:2007-09-27

来源:互联网

这个主要是为了选择城市而写的

CODE:

<?php
/**
[email protected]
citys, 联动菜单
选定值,表单名,选择框名,连动清空如每三个
citys.init(value,form,select,clean);
**/

var citys = {
        value: 0,
        form: null,
        select: null,
        url: "index.php?module=ajax&action=province&cid=",
            
        init: function (value,form,select,clean)
        {
            //alert(value);
            this.value = value;
            this.form = document.forms[form];
            this.select = select;
            //alert(clean);
            if (typeof clean != 'undefined')
            {
                this.Clean(clean);
                this.Default(clean);
            }
            //alert(value);
            if (value == -1) return;
            this.GetData();
            
            

        },

        GetData: function()
        {
            var req = new Request(
                        function()
                        {
                            if (req.xmlhttp.readyState == 4 && req.xmlhttp.status == 200)
                            {
                                //alert(req.xmlhttp.responseText);
                                citys.SetData(req.xmlhttp.responseText);
                                
                            }
                        }
                    );
            req.get(this.url+this.value);

        },

        SetData: function(data)
        {
                var rxr = data.trim().split(",");
                this.Clean(this.select);
                this.Default(this.select);
                //alert(rxr.length);
                if (rxr.length > 1)
                {
                    for (var i=0;i<rxr.length ; i++)
                    {
                        //alert(rxr);
                        var oOption = document.createElement("option");
                        txt = rxr[i].split("|")
                        oOption.text = txt[1];
                        oOption.value = txt[0];
                        //document.all(this.select).options.add
                        //select.options.add(oOption);
                        this.form[this.select].options.add(oOption);
                    }
                }

        },

        Clean: function(id)
        {
            this.form[id].options.length=0;

        },

        Default: function(id)
        {
            this.form[id].options.add(new Option('----','-1'));
        }

        


}
?>

作者: samsung   发布时间: 2007-09-26

Thanks.
:)

作者: luzhou   发布时间: 2007-09-28

:') 这东西怎么用啊...说一个例子吧~

作者: 17too   发布时间: 2007-09-28

citys.init(value,form,select,clean);

这里不是写了吗?

作者: andsky   发布时间: 2007-10-18