gpt4 book ai didi

javascript - 在 JQuery 或 JavaScript 中的 Grid 标题上生成 onClick 事件

转载 作者:行者123 更新时间:2023-12-01 02:11:08 24 4
gpt4 key购买 nike

我有这个 KendoUI 网格,我想为其标题行添加单击事件,并获取单击单元格的文本值:

@(Html.Kendo()
.Grid<Timeshet.Web.Models.UserWeekModel>()
.Name("grid")
.Sortable(sortable => sortable.AllowUnsort(false))
.Columns(columns =>
{
columns.Bound(t => t.Name);//.ClientTemplate("#=Name#" + " " + "<div class='jobDescriptionInfo-img' onclick='showDescription()' title='Job Description' >&nbsp;</div>");
columns.Bound(t => t.JobDescription).Visible(false);
columns.Bound(t => t.LastFri).ClientTemplate("#=LastFri#").HtmlAttributes(new { @class = "last-week" }).Hidden().Sortable(false);
columns.Bound(t => t.Monday).ClientTemplate("#if (Monday.HasNotes) {#" + "#=Monday.Name#" + " " + "<div class='project-note-img' title='Project Notes' >&nbsp;</div>" + "#}else{#" + "#=Monday.Name#" + "#}#").Sortable(false).HtmlAttributes(new { @Class = "#=Monday.Style#" });
columns.Bound(t => t.Tuesday).ClientTemplate("#if (Tuesday.HasNotes) {#" + "#=Tuesday.Name#" + " " + "<div class='project-note-img' title='Project Notes' >&nbsp;</div>" + "#}else{#" + "#=Tuesday.Name#" + "#}#").Sortable(false).HtmlAttributes(new { @Class = "#=Tuesday.Style#" });
columns.Bound(t => t.Wednesday).ClientTemplate("#if (Wednesday.HasNotes) {#" + "#=Wednesday.Name#" + " " + "<div class='project-note-img' title='Project Notes' >&nbsp;</div>" + "#}else{#" + "#=Wednesday.Name#" + "#}#").Sortable(false).HtmlAttributes(new { @Class = "#=Wednesday.Style#" });
columns.Bound(t => t.Thursday).ClientTemplate("#if (Thursday.HasNotes) {#" + "#=Thursday.Name#" + " " + "<div class='project-note-img' title='Project Notes' >&nbsp;</div>" + "#}else{#" + "#=Thursday.Name#" + "#}#").Sortable(false).HtmlAttributes(new { @Class = "#=Thursday.Style#" });
columns.Bound(t => t.Friday).ClientTemplate("#if (Friday.HasNotes) {#" + "#=Friday.Name#" + " " + "<div class='project-note-img' title='Project Notes' >&nbsp;</div>" + "#}else{#" + "#=Friday.Name#" + "#}#").Sortable(false).HtmlAttributes(new { @Class = "#=Friday.Style#" });
columns.Bound(t => t.Saturday).ClientTemplate("#if (Saturday.HasNotes) {#" + "#=Saturday.Name#" + " " + "<div class='project-note-img' title='Project Notes' >&nbsp;</div>" + "#}else{#" + "#=Saturday.Name#" + "#}#").Sortable(false).HtmlAttributes(new { @Class = "#=Saturday.Style#" });
columns.Bound(t => t.Sunday).ClientTemplate("#if (Sunday.HasNotes) {#" + "#=Sunday.Name#" + " " + "<div class='project-note-img' title='Project Notes' >&nbsp;</div>" + "#}else{#" + "#=Sunday.Name#" + "#}#").Sortable(false).HtmlAttributes(new { @Class = "#=Sunday.Style#" });
columns.Command(command => command.Custom("Job Description").Click("showDescription"));
})
.Selectable(s => s.Enabled(true).Mode(GridSelectionMode.Single).Type(GridSelectionType.Cell))
.DataSource(source => source.Ajax()
.Batch(true)
.Model(model => model.Id("UserId"))
.Read(read => read.Action("GetData", "Home").Data("additionalData"))
.Update(update => update.Action("UpdateData", "Home").Data("additionalData")
).Events(events => events.RequestEnd("onRequestEnd"))
))

我尝试在 document.ready 上执行以下操作,但似乎不起作用:

var titles = $("#grid thead tr th");

for (var i = 0, len = titles.length; i < len; i++)
{
titles[i].addEventListener("click", function() {
alert(this.innerHTML);
}, false);
}

我还找到了这个解决方案,这正是我想要做的,但我无法真正重构它以供我自己使用,因为我不放弃知道这一切:jsFiddle

我想知道如何在网格标题上触发单击事件。

这就是上面的网格在浏览器中以 HTML 形式呈现的方式:

enter image description here

最佳答案

试试这个 jquery 代码:

$(document).on("click", "th[role='columnheader']", function () {
alert($(this).text());
});

关于javascript - 在 JQuery 或 JavaScript 中的 Grid 标题上生成 onClick 事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22322167/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com