gpt4 book ai didi

javascript - 在 EditorFor 字段上使用 Javascript?

转载 作者:行者123 更新时间:2023-12-04 17:20:30 25 4
gpt4 key购买 nike

在 MVC4 中,我有一个 EditorFor 字段,它代表一个 bool 值并呈现为一个复选框,如果勾选了该复选框,我想让其他 EditorFor 字段更改为不可编辑。这在纯 html 中很简单,但使用 Razor 语法我不确定如何执行此操作。

<div class="editor-field">
@Html.EditorFor(model => model.Draw)
@Html.ValidationMessageFor(model => model.Draw)
</div>

<script type="text/javascript">
function validate() {
if (document.getElementById('@Html.EditorFor(model => model.Draw)').checked) {
alert("checked")
} else {
alert("You didn't check it! Let me check it for you.")
}
}

试图用那个脚本测试它,但因为我不知道编辑器的 ID,所以我不确定该怎么做。

最佳答案

如果您使用 CheckBoxFor 而不是 EditorFor(它是一个通用帮助程序),您可以通过方法重载轻松添加 HTML 属性。添加一个 ID 允许您从 JavaScript 访问它。

<div class="editor-field">
@Html.CheckBoxFor(model => model.Draw, new { ID = "cbxDraw" })
@Html.ValidationMessageFor(model => model.Draw)
</div>

<script type="text/javascript">
$(document).ready(function() {
$('#cbxDraw').on('change', function() {
var $cbx = $(this),
isChecked = $cbx.is(':checked');

$cbx.closest('.editor-field')
.siblings()
.find(':input')
.prop('disabled', isChecked);
});
});
</script>

(注:本例使用jQuery)

关于javascript - 在 EditorFor 字段上使用 Javascript?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14626732/

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