Мне нужно получить значение аргумента из функции внутри свойства onlick
кнопки, но функция (this.getListItemId(itemId)
), которая использует этот аргумент, не находится внутри контекста, из которого находится кнопка.Кнопка находится внутри дочерней функции (this.renderVideoListTemplate()
), которая находится внутри родительской функции (getVideoListItems()
).Функция, которую я хочу вызвать для события onclick (this.getListItemId()
), находится вне того места, где находится функция кнопки (this.renderVideoListTemplate()
), поэтому она говорит, что функция (this.getListItemId(itemId)
) не существует.
var getVideoListItems = function() {
var self = this;
this.renderVideoListTemplate = function(result) {
for(let i=0; i < result.length; i++){
====>>> var listItems ="<div class='Button fecharVideo' onclick='"+self.getListItemId(result[i].ID)+"'>"+
"<span class='Button'>Excluir Vídeo</span>"+
"</div>";
$("#video-list-container").append(listItems);
};
};
this.deleteListItem = function(webUrl, listName, itemId, success, failure) {
self.getDataByItemId(webUrl,listName,itemId,function(item){
$.ajax({
url: item.__metadata.uri,
type: "POST",
headers: {
"Accept": "application/json;odata=verbose",
"X-Http-Method": "DELETE",
"If-Match": item.__metadata.etag
},
success: function (data) {
success();
},
error: function (data) {
failure(data.responseJSON.error);
}
});
},
function (error) {
failure(error);
});
};
this.getListItemId = function(itemId){
self.deleteListItem(webUrl, listName, itemId)
};
return this.init();
}