私のアプリケーションでは、Ext.List を使用して JSON のコンテンツを表示します。最初は JSON データが正しく表示されます。検索キーワードを追加すると、JSON の結果からの応答が前のコンテンツとともに追加されます。
最初はテーブル
Car
Bus
Jeep
Car を検索すると、次の表が表示されます
Car
Bus
Jeep
Car
しかし、私は新しい結果だけを表示したい、ここにコード
探す
{
xtype: 'button',
ui:'normal',
width:'20%',
text: 'Search',
handler: function()
{
App.gvars.keywd=Ext.getCmp("searchfd").getValue();
searchfriends();
Ext.StoreMgr.get('searchfriendslist1').load();// i have added the method to refresh table but no use
}
}
検索テーブル
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}\')"/>'+
'</td></tr></table></div>'].join(),
listeners : {
itemtap: function (list, index, item, record, senchaEvent) {
if (senchaEvent.event.target.nodeName == 'IMG') {
var data = record.getData();
var userId = data.userId;
var itemPurchased = data.itemPurchased;
invitefriends(userId);
}
}
}
});
JSON
function searchfriends() {
alert(App.gvars.keywd);
Ext.Ajax.request({
url: App.gvars.apiurl + 'SearchFriends/userID='+App.gvars.userid+'/keywords='+App.gvars.keywd,
method: "GET",
useDefaultXhrHeader: false,
withCredentials: true,
success: function (response) {
var respObj = Ext.JSON.decode(response.responseText);
Ext.getCmp('searchfriendslist1').setData(respObj.searchFriends);
},
failure: function (response) {
var respObj = Ext.JSON.decode(response.responseText);
Ext.Msg.alert("Error",response.responseText);
}
});
}
JSON 呼び出しの前にリストを更新またはクリアする方法。解決を手伝ってください