【发布时间】:2018-07-12 00:57:57
【问题描述】:
我是 Angular js 的新手, 当我使用 ajax 更改选择选项的 html 时遇到问题。我不确定做什么是对还是错,但我尝试的不是 UI 上的结果,也不是浏览器控制台日志中的错误,它没有效果。
这是我的 HTML
<select require="require" ng-model="getself_data" ng-change ="get_type(1)" ng-init="get_type(0)">
这是我的 js
$scope.get_type = function(){
$http({
method: "POST",
url: 'getmydata'
}).then(success, failed);
function success(response) {
console.log(response);
if(response['data']['CODE']==="000"){
var opt_data = "";
var total_row = response['data']['DATA'].length;
for (var i = 0; i < total_row; i++) {
opt_data = "<option value='" + response['data']['DATA'][i]['ID'] +"'>" +response['data']['DATA'][i]['NAME'] +"</option>";
}
console.log(opt_data);
$scope.getself_data = opt_data;
}else{
console.log(response);
}
};
function failed(response) {
console.log(response);
alert('Error : ' + response);
}
}
对于来自 ajax 的结果响应是
{
"CODE": "000",
"DATA": [
{
"ID": "2",
"NAME": "AAAA"
},
{
"ID": "6",
"NAME": "Test_name"
}
]}
请帮我解决一下
【问题讨论】:
-
在我看来,您将 ng-model 与 ng-options 混淆了
-
您的
$http请求不应该使用GET类型吗?事实上$http.get(url).then(...)语法更容易理解
标签: javascript jquery html angularjs ajax