如何从 .NET 字符串序列化 javascript 函数

How to serialize javascript function from .NET string

本文关键字:序列化 javascript 函数 字符串 NET      更新时间:2023-09-26

MVC4 Razor 视图包含从视图模型返回的函数定义:

<script>
var colmodel = { onClick: function() { 
                   alert('Click'); 
                   }
               };
</script>

我尝试使用

var colmodel=@Html.Raw(Model.Definition());

并在视图中模型

public string Definition() {
  return Json.Encode( new { onClick= @"function() { 
                   alert('Click'); 
                   }
" );
 }

但它返回字符串属性而不是 JavaScript 函数对象。如何解决这个问题,以便 javascript 函数定义出现在视图中?

ASP.NET 使用MVC4,C#,Razor,Jquery。

只需使用字符串返回函数:

public string Definition() {
  return "{ onClick: function() { alert('Click'); }};";
}

分号在以下末尾不是必需的:

var colmodel=@Html.Raw(Model.Definition())