gpt4 book ai didi

c# - 防止通过 htmlAttributes 分配给 Html.TextBoxFor 的 onchange 事件的 javascript 编码

转载 作者:行者123 更新时间:2023-11-29 20:15:36 26 4
gpt4 key购买 nike

我有一个 Html.TextBoxFor,我想为它分配一些动态 javascript(特别是 onchange 事件):

@Html.TextBoxFor(model => answer.Value, new { @class = "answerinput", @onchange = "submitAnswer(\"" + Model.QuestionID.ToString() + "\")" });

但是,当我检查生成的 HTML 时,传递给 javascript 函数的值周围的引号被编码,这是一个问题:

onchange="submitAnswer("3")"

我尝试了一些方法,比如将字符串放入 IHtmlString,然后在赋值中使用 IHtmlString,但结果始终相同。

有没有办法阻止 MVC 对分配给@onchange 的值进行编码?

谢谢!

最佳答案

或者,您应该更改附加到事件的方式:

Html.TextBoxFor(x => x.SomeProperty, new { rel = Model.QuestionID, @class = "SomeClass" });

然后在 javascript 中,附加到事件:

$('.SomeClass').each(function()
{
$(this).change(function()
{
var questionId = $(this).attr('rel');
});
});

关于c# - 防止通过 htmlAttributes 分配给 Html.TextBoxFor 的 onchange 事件的 javascript 编码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7084518/

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