jquery的ajax和php *** 作(根据学院id来提取每个院的专业名称,并显示在网页上,代码如下)

jquery的ajax和php *** 作(根据学院id来提取每个院的专业名称,并显示在网页上,代码如下),第1张

我用的框架是cakaphp

html代码

<select id="academy"  name="academy">

    <option value="" selected="">请选择学院</option>

</select>

 <select style="width: 150px" name="profession" id="profession">

    <option value="" selected="">请选择所需专业</option>

</select>

jquery代码

    $(document).ready(function() {

        // ------------------------------

        //add academy

        $.ajax({

            type    : "POST",

            url     : '/Touches/ajaxTest',

            async   : false,

            data    : {},

            dataType : 'json',

            success : function(acadList) {

                var acadHtml = ""

                for (var i in acadList) {

                    acadHtml += "<option value="+acadList[i].acadId+" >"+acadList[i].acadName+"</option>"

                }

                $("#academy").append(acadHtml)

            },

            error   : function(XMLHttpRequest, textStatus, errorThrown) {

                alert('通信失败:' + errorThrown)

            }

        })

    

        // ------------------------------------

        // add profession

        $('#academy').change(function(){ 

            var value = $(this).val()

            $('#profession option:gt(0)').remove()

            if (value != "") {

                $.ajax({

                    type    : "POST",

                    url     : '/Touches/ajaxTest2',

                    async   : false,

                    data    : {'acadId' : value},

                    dataType : 'json',

                    success : function(porList) {

                        var porHtml = ""

                        for (var i in porList) {

                            porHtml += "<option value="+porList[i]+" >"+porList[i]+"</option>"

                        }

                        $("#profession").append(porHtml)

                    },

                    error   : function(XMLHttpRequest, textStatus, errorThrown) {

                        alert('通信失败:' + errorThrown)

                    }

                })

            }

        })

    

    })

php代码

    public function ajaxTest() {

        $rtn = array(

            array(

                "acadId" => "acad1",

                "acadName" => "acad1"

            ),

            array(

                "acadId" => "acad2",

                "acadName" => "acad2",

            ),

            array(

                "acadId" => "acad3",

                "acadName" => "acad3",

            ),

        )

        return new CakeResponse(array('body' => json_encode($rtn)))

    }

    public function ajaxTest2() {

        $p = $this->request->data

        $rtn = array(

            "acad1" => array(

                "pro1",

                "pro2"

            ),

            "acad2"=> array(

                "pro3",

                "pro4"

            ),

            "acad3" => array(

                "pro5",

                "pro6"

            ),

        )

        return new CakeResponse(array('body' => json_encode($rtn[$p["acadId"]])))

    }

你这 内容里其他文字和学校名称很难区分,唯一不同的就是后缀是:学院,技校,院校

$str = "......."//你那串字符

preg_match_all('/n(.*?学院)/i' ,$str ,$res1)

preg_match_all('/n(.*?技校)/i' ,$str ,$res2)

preg_match_all('/n(.*?院校)/i' ,$str ,$res3)

这时候你var_dump($res1)var_dump($res2)var_dump($res3)

dump出来是数组,接下来 *** 作自己根据数组内容去选取

刚才我用字符测试了一下 , $res1 是一个二维数组. 循环便利一下取$value[0],然后

再替换里面的 n和\  $arr[] =  str_replace('array('\','n')','array('','')',$value[0])


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/bake/7982472.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-12
下一篇2023-04-12

发表评论

登录后才能评论

评论列表(0条)

    保存