当我加载我的页面时,一切都很好。但是,当我在调用控制器中的操作的 js 文件(在我的公用文件夹中)中触发 AJAX 事件时,出现了问题。
<b>Fatal error</b>: Uncaught exception 'Zend\View\Exception\RuntimeException' with message 'No RouteMatch instance provided' in C:\xampp\htdocs\test\vendor\zendframework\zendframework\library\Zend\View\Helper\Url.php:86
Stack trace:
#0 [internal function]: Zend\View\Helper\Url->__invoke()
#1 C:\xampp\htdocs\test\vendor\zendframework\zendframework\library\Zend\View\Renderer\PhpRenderer.php(400): call_user_func_array(Object(Zend\View\Helper\Url), Array)
#2 C:\xampp\htdocs\test\module\Application\view\layout\layout.phtml(25): Zend\View\Renderer\PhpRenderer->__call('url', Array)
#3 C:\xampp\htdocs\test\module\Application\view\layout\layout.phtml(25): Zend\View\Renderer\PhpRenderer->url()
#4 C:\xampp\htdocs\test\vendor\zendframework\zendframework\library\Zend\View\Renderer\PhpRenderer.php(507): include('C:\xampp\htdocs...')
#5 C:\xampp\htdocs\test\vendor\zendframework\zendframework\library\Zend\View\View.php(201): Zend\View\Renderer\PhpRenderer->render(Object(Zend\View\Model\ViewModel))
#6 C:\xampp\htdocs\test\vendor\zendframework\ze in <b>C:\xampp\htdocs\test\vendor\zendframework\zendframework\library\Zend\View\Helper\Url.php</b> on line <b>86</b><br />
这是我的js:
$('.expand, .ccid, .name').click(function(){
var CCID = $(this).parent().attr('id');
CCID = parseInt(CCID);
if($.inArray(CCID,$expanded) > -1){
foldin(CCID);
} else {
$.post('expand', { // Call to "expand" action in controller
id: CCID
},function(data){
if(data.hasOwnProperty('info')){
expand(data.info);
} else {
console.log('Can\'t find customer info.');
}
},'json');
}
});
下面是我的 layout.phtml 的第 25 行:
if($this->url() !== '/auth'){
echo 'stuff';
}
我把它放在那里是为了检查用户是否在登录页面上,所以如果他们在,它不会回显某个 div。可能有一种我不知道的更好的方法来做到这一点,但我仍然不明白为什么当我触发 AJAX 事件而它不正常时它会给我带来麻烦。它也非常不一致。有时该事件会持续很长时间,然后突然会出现上述错误。
有谁知道这是关于什么的?事件与渲染 layout.php 有什么关系?