将事件和模型属性从视图传递到 javascript 函数

Posted

技术标签:

【中文标题】将事件和模型属性从视图传递到 javascript 函数【英文标题】:Passing event and model property from view to javascript function 【发布时间】:2015-11-22 18:03:28 【问题描述】:

我使用 Devexpress 网格和 ASP.NET MVC。在一个视图中,我有一个图像,在悬停它时,我想调用 javascript 函数传递事件和一个模型属性。

这是我的代码:

column.SetDataItemTemplateContent( c =>

    string errorMessage = DataBinder.Eval( c.DataItem, "Errors" ).ToString();
    if(!String.IsNullOrEmpty(errorMessage))
    
        ViewContext.Writer.Write( "<div style = 'cursor: pointer;' onmouseover='ShowErrorMessage(event, " + errorMessage + ")'><img id='errImg' src='../../Content/Images/error.png' /></div>" );
    
 );

但它不会进入事件处理程序。如果我从 ShowErrorMessage 中删除第二个参数并只留下事件,它就可以工作。但是如何传递errorMessage呢?

【问题讨论】:

【参考方案1】:

代码会将您的字符串解释为变量名 try

ViewContext.Writer.Write( "<div style = 'cursor: pointer;' onmouseover='ShowErrorMessage(event)" + errorMessage + "'><img id='errImg' src='../../Content/Images/error.png' /></div>" ); 

【讨论】:

啊,是的,我错过了一些东西,新的编辑应该可以做到。

以上是关于将事件和模型属性从视图传递到 javascript 函数的主要内容,如果未能解决你的问题,请参考以下文章

MVC 4如何将模型属性列表从视图传递给Action

iOS:如何使用 MVVM 将模型从视图模型传递到视图模型?

如何将数据从父模型类传递到 SwiftUI 中的子视图

如何将触摸事件从一个视图传递到另一个视图

在 ASP.Net MVC 5 中将 javascript 数组从视图传递到控制器

将模型和额外参数从视图传递到 MVC 中的操作