提问人:code_dev 提问时间:2/21/2023 最后编辑:Philcode_dev 更新时间:2/21/2023 访问量:73
Ajax 成功数据显示 undefind
Ajax success data show undefind
问:
我返回一个数组对象数据 Ajax 成功结果,然后我打印 li 标签,但它显示 undefind
我的 Ajax 代码是
$.ajax({
'method': 'GET',
'url': base_url +'party/selectCities?id='+state,
success: function(data) {
var newData = data.replace(/\"/g, "")
if(newData == ""){
}else{
var datas = JSON.stringify(newData);
var jsdata = JSON.parse(datas);
alert(jsdata);
var html = ``;
for(var i = 0; i<jsdata.length; i++){
html += '<li ng-click="selectcityclubs(' + jsdata[i].city+ ');>' + jsdata[i].city+ '</li>';
}
$("#ClubCity").html(html);
}
}
});
在这里,我提醒jsdata,我得到的结果是这样的
[{city:North Goa},{city:South Goa}]
但是李列表显示undefind,如何解决这个问题..
请帮我解决这个问题
答:
0赞
Rory
2/21/2023
#1
对 ng-click 属性使用双引号 (“),并使用反斜杠 () 转义其中的双引号 ()
var html = '';
for (var i = 0; i < jsdata.length; i++) {
html += '<li ng-click="selectcityclubs(\'' + jsdata[i].city + '\')">' + jsdata[i].city + '</li>';
}
$("#ClubCity").html(html);
评论
0赞
code_dev
2/21/2023
这里的ng-click功能不起作用,为什么?
0赞
treckstar
2/21/2023
在这里猜一猜,你有没有尝试过骆驼案例selectCityClubs()
0赞
code_dev
2/21/2023
@treckstar没有函数正确写入但没有响应
2赞
treckstar
2/21/2023
#2
看起来您在 .看看下面的这个片段。ng-click
此外,使用模板文字(反引号)而不是用于连接字符串有助于使内容更具可读性。+
编辑:用 Angular 更新并展示了如何使用 versus 和ng-repeat
plain HTML
jQuery
// angular code
angular.module('app', [])
.controller('TestController', function($scope) {
$scope.selectcityclubs = function(c) {
alert(c);
}
$scope.jsdata = [{
city: 'North Goa'
}, {
city: 'South Goa'
}];
});
// jQuery code
let jsdata = [{
city: 'North Goa'
}, {
city: 'South Goa'
}];
let html = '';
for (var i = 0; i < jsdata.length; i++) {
html += `<li ng-click="selectcityclubs('${jsdata[i].city}');">${jsdata[i].city}</li>`;
}
$("#ClubCity").html(html);
li,
button {
cursor: pointer;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.7.5/angular.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<body ng-app="app" ng-controller="TestController">
<h2>Uses jQuery (working)</h2>
<ul id="ClubCity"></ul>
<h2>Click Works</h2>
<ul id="ClubCity1">
<li><button ng-click="selectcityclubs('North Goa')">North Goa</button></li>
<li><button ng-click="selectcityclubs('South Goa')">South Goa</button></li>
</ul>
<h2>Uses ng-repeat (working)</h2>
<ul id="ClubCity2">
<li ng-repeat="city in jsdata" ng-click="selectcityclubs(city.city);">{{city.city}}</li>
</ul>
</body>
评论
0赞
code_dev
2/21/2023
ng-click 不起作用,我为此所做的
0赞
treckstar
2/21/2023
@code_dev查看我编辑的答案时,我将其更新为包含 angular,如果您单击该按钮,您将看到它有效。Run code snippet
0赞
code_dev
2/21/2023
是的,我会更新它,但我的功能不起作用,这真是太棒了
0赞
treckstar
2/21/2023
也许提出一个新问题,包括更多的代码和函数,这可以帮助你获得该部分的答案
0赞
code_dev
2/21/2023
stackoverflow.com/questions/75518058/......已经打开了
评论