我试图用list中的参数调用一个方法/函数,但它既没有pasing也没有调用method.Here我的代码。这是我的代码
LIST
var searchfrieandtab= Ext.create('Ext.List', {
width: 320,
height: 290,
id : 'searchfriendslist1',
itemTpl: ['<div style="margin:0px;background:#fff;" >'+
'<table style="margin:0px;padding:0px;height:40px;" width="100%" >'+
'<tr><td style="padding:2px 5px;width:90%;"><span><img src="data:image/jpeg;base64,{userImage}"/>'+
'</span><span>{userFirstName}</span></td>'+
'<td style="padding:2px 10px;width:10%;">'+
'<img src="resources/img/addplus.png" onclick="invitefriends{\'{userId}\')"/>'+//HERE AM CALLING THE METHOD
'</td></tr></table></div>'].join(),
listeners : {
itemtap: function (list, index, item, record, senchaEvent) {
if (senchaEvent.event.target.nodeName == 'IMG') {
var data = record.getData();
var itemId = data.itemId;
var itemPurchased = data.itemPurchased;
}
}
}
});
方式
function invitefriends(friendid) {
alert("check",friendid);
Ext.Ajax.request({
//url: App.gvars.apiurl + 'InviteFriends/userID='+App.gvars.userid+'/friendID='+friendid, // url : this.getUrl(),
url:'http://192.168.1.155:8181/WishList/InviteFriends/userID=1/friendID='+friendid,
method: "GET",
useDefaultXhrHeader: false,
withCredentials: true,
success: function (response) {
var respObj = Ext.JSON.decode(response.responseText);
if(respObj[0].response=="Success"){
alert(Response)
Ext.Msg.alert("Invite Friends",respObj[0].MailResponse);
}else{
Ext.Msg.alert("Error",respObj[0].errorMsg);
}
},
failure: function (response) {
Ext.Msg.alert("Error",response.responseText);
}
});
}
我的代码有什么问题?请帮我解决
答案 0 :(得分:2)
这件作品是错误的invitefriends{\'
。 '{'应该是'('。
您的代码在这里看起来很奇怪"errorMsg": "".
您是否尝试在success方法中声明变量?从我可以看到他们没有使用,删除这些行(“errorMsg”和“MailResponse”)。
我正在低估这个问题,因为你没有先检查你的代码是否有错误。
答案 1 :(得分:1)
在list itemtap事件中触发自定义事件。
listeners : {
itemtap: function (list, index, item, record, senchaEvent) {
if (senchaEvent.event.target.nodeName == 'IMG') {
var data = record.getData();
var itemId = data.itemId;
var itemPurchased = data.itemPurchased;
this.fireEvent('onItemTap',this,itemId,itemPurchased);
}
}
}
在控制者汉德尔那个事件
Ext.define('SF.controller.TestController', {
extend : 'Ext.app.Controller',
config : {
refs : {
searchfriendslist1 : '#searchfriendslist1'
},
control :{
searchfriendslist1 : {
onItemTap : 'invitefriends'
}
}
},
viewgiftdetails : function(list,itemId,itemPurchased) {
console.log(itemId);
console.log(itemPurchased);
}
});