将 mvc 剃须刀复选框链接到剃须刀文本框
本文关键字:剃须刀 文本 复选框 mvc 链接 | 更新日期: 2023-09-27 18:31:41
tl;dr 我想仅在选中复选框时才将文本框的值保存到模型中。
首先,我知道我的代码非常混乱。我一直在尝试从另一个堆栈溢出问题中即兴创作我的代码,所以它首先是错误的。 我想做的是对事件有这些限制,有些是布尔值,有些是数字。例如,禁止吸烟是一个布尔值,但最低年龄是一个数字。不过,这些是可选的,用户不必设置任何内容。因此,我想有一个复选框,说明他们想要限制,但也要将值保存到模型中。 这是我到目前为止所拥有的:
<p>
<input type="checkbox" id="ageLowCapCB"
@(((Model.currentRestrictions.AgeLowCap != null) &&
(Model.currentRestrictions.AgeLowCap != 0)) ? "checked = 'checked'" : "")
/>
Low Age Limit
@Html.TextBoxFor(e => e.currentRestrictions.AgeLowCap, new {id = "ageLowCap"})
</p>
我拥有的脚本/jquery 是:
$("#ageLowCapCB").click(function () {
var isChecked = $(this).is(":checked");
$("#ageLowCap").val(isChecked ? /*I don't know what to put here*/);
});
我从中提取的问题是使用"T"或"F"的值表示真假,因此他们很容易填写评论部分输入"T":"F",仅此而已。但是我需要拉取文本框的值并将其设置为Model.currentLimits.AgeLowCap的值。 有没有人对在这样奇怪的情况下该怎么做有什么好主意?
不幸的是,有一种方法可以将javascript值传递给c#视图模型。但是,有一些解决方法。您可以创建操作,该操作将接受要从javascript传递到c#的任何内容,然后当您需要传递该值时,可以通过向该操作发出ajax请求来完成,并且在该操作中,您可以保留该值。从那里你有很多选项,如数据库、会话等。
这个问题对
我的理解不是很清楚。我的理解是,如果选中复选框,则显示接受整数值的文本框。所有这些都是模型字段。
方法1:编写一个JavaScript函数来检测复选框选中的attr是否为真,显示文本框以接受用户的输入;文本框的写入函数仅接受整数。按键可以调用该函数。
方法2:如果您不必在文本框中从用户那里获取整数值,则在发布时验证是否选中复选框,如果为真,则将值分配给整数文本框。
-谢谢