2009-05-22 48 views
0

我需要能够使用HTML Helper动态设置onclick。下面是我想要做的,但我发现了一个明显的语法错误在MVC中使用Html Helper动态添加onclick

<%=Html.CheckBox("checkboxname", item.Id = 3, New With {.onclick = "ajaxThis(this, <%= Html.Encode(item.ID) %>, '<%= Html.Encode(item.NUMBER) %>');"})%> 

回答

1

的第一步是从<%=了Html.Encode删除<%=%>(项目。 ID)%>并直接调用Html.Encode(item.ID)。对item.NUMBER编码做同样的处理。

喜欢的东西:

"ajaxThis(this, " + Html.Encode(item.ID) + ", '" + Html.Encode(item.NUMBER) + "');" 
1

你输入一个字符串,所以只是CONCAT字符串代替:

<%= Html.CheckBox("checkboxname", item.Id = 3, New With {.onclick = String.Concat("ajaxThis(this, ", Html.Encode(item.ID), ", '", Html.Encode(item.NUMBER), "');")})%> 

但是,它可能会更容易只需添加一个CSS类和挂钩使用jQuery建立事件处理程序。

相关问题