0

我有以下模板,通过 PHP/mysql 填充了“名称”。请注意,我有一个删除按钮(一个标签)。

<script type="text/x-kendo-tmpl" id="template">
    <div class="usrList">
        <strong style="position:relative;top:5px;left:5px">${Name}</strong>
        <a class="k-button k-button-icontext k-delete-button" id="delete_user" onClick="delusr()" style="float:right;font-size:85%;padding:3px;"><span class="k-icon k-delete"></span>Remove</a>
    </div> 
</script>

当我单击删除按钮时,我想在它旁边获取“名称”(强标签)。在这样的 js 函数中说(当然不起作用)

function delusr(e){
   var listView = $("#listView").data("kendoListView");
   var data = listView.dataSource.view();
   alert(data[$(e).index()].Name);
}
4

1 回答 1

4

添加this为 的参数delusr

<script type="text/x-kendo-tmpl" id="template">
    <div class="usrList">
        <strong style="position:relative;top:5px;left:5px">${Name}</strong>
        <a class="k-button k-button-icontext k-delete-button" id="delete_user" onClick="delusr(this)" style="float:right;font-size:85%;padding:3px;"><span class="k-icon k-delete"></span>Remove</a>
    </div>
</script>

并将函数定义delusr为:

function delusr(elem) {
    var listView = $("#listView").data("kendoListView");
    var item = $(elem).closest("[role='option']");
    var data = listView.dataSource.getByUid(item.data("uid"));
    alert(data.Name);
}

我所做的是找到uid已单击列表的元素,然后获取getByUid用于该项目的数据。

于 2013-02-25T23:17:31.473 回答