我正在使用ZF2和AngularJS来创建测验应用程序。当我运行代码时,没有错误发生,也没有结果。
(function(angular) {
function MainController($scope,$http) {
$scope.question = function(id)
{
var site = "http://localhost/zf/public/interviewer";
var page = "/jsonquestion/"+id;
alert(site + page);
var reqQuestion = $http.get(site + page);
reqQuestion.success(function(data, status, headers, config) {$scope.question.questions = data;});
reqQuestion.error(function(data, status, headers, config){alert("AJAX failed!");});
alert(data);
}
};
angular.module("app", []).controller("MainController", ["$scope", MainController]);
})(角度);
我的部分是
public function jsonquestionAction()
{
$id = (int) $this->params()->fromRoute('id', 0);
$questions = $this->getQuestionsTable()->getQuestions($id);
$result = json_encode($questions);
$myfile = fopen("newfile.txt", "w") or die("Unable to open file!");
fwrite($myfile, $result);
fclose($myfile);
echo $result;
return $result;
}
当我从浏览器调用http://localhost/zf/public/interviewer/jsonquestion/1
时,它正在工作并返回Json
答案 0 :(得分:0)
在黑暗中拍摄。你的zend函数叫做jsonquestionAction,但你的页面调用是jsonquestion。
也许改变这个:
var page = "/jsonquestion/"+id;
对此:
var page = "/jsonquestionAction/"+id;
会有所帮助。
答案 1 :(得分:0)
您没有向控制器注入$ http 尝试改变这一点。
angular.module("app", []).controller("MainController", ["$scope", "$http", MainController]);