首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ZF2-无法在zend framework 2上使用jQuery.ajax访问控制器操作

ZF2-无法在zend framework 2上使用jQuery.ajax访问控制器操作
EN

Stack Overflow用户
提问于 2013-08-14 18:18:28
回答 1查看 1.8K关注 0票数 1

为了设置两个相关的下拉列表,我使用了jQuery.ajax,但我遇到了一些麻烦,并且我认为我在$.ajax上设置的控制器操作的url是不可访问的。

这是我的控制器动作代码:

代码语言:javascript
复制
 public function fillIncidentsAction()
      {
            $request = $this->getRequest();
            if ($request->isPost())
            {
                $code_categ = (int) $request->getPost('code_categ',0);           
                $data = new JsonModel(array(
                    'success' => true,
                    'results' => $this->getTableInstance('TypeIncidentTable')
                                        ->getListTypeIncident($code_categ),
                ));
                return $data;

            }
        }

这是我的js函数的主要部分。

代码语言:javascript
复制
$('#'+source).change(function() {

    if($('#'+source).val() != '')
     {

        $.ajax({
            type:  'POST',
            async: false,
            url:   url,
            cache: true,
            dataType: 'json',
            data:  { code_categ: $('#'+source).val() },
            success: function(data){
            alert(data.success);//<------ i added this to test if this function is executed or not

                if(data.success)
                {
                    $('#'+target).prop('disabled', true);
                    if(data.results != ""){
                        var options = new Array();
                        $.each(data.results, function(key, value){
                           options[((key) ? key : 0)] = '<option value="' + key + '">' + value + '</option>';
                        });
                        $("#"+target).html(options.join(''));

                        $('#'+target).prop('disabled', false);;
                    }
                }
            },


        });

我不知道我哪里错了。有什么建议吗?感谢您的帮助!

对不起,我的url是这样设置的:

代码语言:javascript
复制
<script type="text/javascript">
 $(document).ready(function() {
  var url = "<?php echo $var =$this->url('gims/default', array('controller' =>       'evenement', 'action' => 'fill_incidents')); ?>";

// initialize the js function
dependentDropDown('firstList','secondList',url);
});
</script>

希望这能给你更多的细节。

EN

回答 1

Stack Overflow用户

发布于 2013-08-14 21:47:16

问题出在我的moodule.config.php上,我还没有启用Json策略。

代码语言:javascript
复制
'view_manager' => array(
          //...
'strategies' => array(
                'ViewJsonStrategy',
        ),

        ),
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18229057

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档