html5 – Html.EditFor Onchange事件

我正在开发一个MVC4应用程序.
当model.ExternalvenderNo被更改时,我想在我的模型中更改IsChanged字段.

以下是“查看”页面上的代码

<div class="editor-field">
        @Html.EditorFor(model => model.ExternalvenderNo,new { @onchange = "OnChangeEvent();" })
        @Html.ValidationMessageFor(model => model.ExternalvenderNo)
    </div>

function OnChangeEvent()
{
    alert("value is changed");
    @{ Model.IsChanged = true;
    }
}

要检查是否正在调用OnChangeEvent,我会发出警报.
但警报也不起作用.
这意味着OnChangeEvent不会被称为.

当model.ExternalvenderNo被更改时,我只想将IsChanged字段更改为true.

模特有bool IsChanged

解决方法

尝试使用@ Html.TextBoxFor
@Html.TextBoxFor(model => model.ExternalvenderNo,new { onchange = "OnChangeEvent()" })

<script type="text/javascript">
 function OnChangeEvent(){
    alert("value is changed");
    @Model.IsChanged = true;
 }
</script>

或者让Jquery处理更改事件

@Html.EditorFor(model => model.ExternalvenderNo)

<script type="text/javascript">
$('#ExternalvenderNo').change(function(){
    alert('Changed!');
    @Model.IsChanged = true;
});
</script>

相关文章

HTML5和CSS3实现3D展示商品信息的代码
利用HTML5中的Canvas绘制笑脸的代码
Html5剪切板功能的实现
如何通过HTML5触摸事件实现移动端简易进度条
Html5移动端获奖无缝滚动动画实现
关于HTML5和CSS3实现机器猫的代码