Javascript 在剑道ui中打开带有客户端模板的弹出窗口
我使用剑道网格来显示数据,我想在用户单击其中一个包含字符串的列时打开弹出窗口。我的代码是Javascript 在剑道ui中打开带有客户端模板的弹出窗口,javascript,asp.net-mvc,kendo-ui,kendo-grid,kendo-window,Javascript,Asp.net Mvc,Kendo Ui,Kendo Grid,Kendo Window,我使用剑道网格来显示数据,我想在用户单击其中一个包含字符串的列时打开弹出窗口。我的代码是 columns.Bound(c => c.ResumeFileUrl).EditorViewData(new { PartNo = "#: PartNo #" }).EditorTemplateName("ResumeFileUrlEditor").ClientTemplate("<a href='" + "/#=Id#'>View Details</a>"); 我的剑道窗
columns.Bound(c => c.ResumeFileUrl).EditorViewData(new { PartNo = "#: PartNo #" }).EditorTemplateName("ResumeFileUrlEditor").ClientTemplate("<a href='" + "/#=Id#'>View Details</a>");
我的剑道窗口是:
@(Html.Kendo().Window()
.Name("Proposal")
.Title("Proposal")
.Iframe(true)
.Visible(false)
.Draggable()
.Resizable()
)
当我点击列字符串时,弹出窗口没有打开。代码有什么问题 将您的客户端模板更改为:
"<a href='\\\\#' data-id='#=Id#'>View Details</a>"
发生了什么事
该链接被设置为没有url或有效的anchorhref=因此单击该链接不会对用户执行任何可见操作;
为每个项添加了一个名为id的数据属性,因此您可以使用jQuery通过.dataid访问它。
现在,在单击事件中,您有了单击id,可以用它打开详细信息视图。您在浏览器控制台中是否有任何错误?没有,没有任何错误。它不起作用,我将其添加为:。我应该改变房间里的任何东西吗jQuery@Acnologia在剑道的模板中逃跑真是个婊子,试试\\。在最坏的情况下,请改用href='javascript:void0',@Acnologia描述您的意思,它不起作用。在您的请求中有很多阶段可能有效,也可能无效。模板呈现“视图详细信息”链接是否正常?如果是,单击事件是否有效?如果是,是否正在定义事件内的id?等等帮我帮你。对不起,我犯了一个小错误,现在它在工作。谢谢你的帮助@DontVoteMeDown@Acnologia很高兴知道!!现在,如果答案帮助你实现你的目标,请考虑检查它作为问题的答案。
"<a href='\\\\#' data-id='#=Id#'>View Details</a>"
$("[data-id]").on("click", function () {
var id = $(this).data('id'); // Here's the Id of the item which user have clicked
$("#Proposal").data("kendoWindow").open();
});