【问题标题】:ASP.NET MVC5 CHECK IF ID IS SET C#ASP.NET MVC5 检查是否设置了 ID C#
【发布时间】:2018-06-19 10:47:15
【问题描述】:

我在asp.net mvc5视图中工作,如何知道id是否写在文本框中,这里,如何知道Id是否写在这里并将该值保存以供其他用途???如何知道 id 是否已经在文本框中设置?

【问题讨论】:

  • 整理你的问题并澄清它。你不断重复自己,格式很差。
  • @ADyson 谢谢先生,我已经编辑了问题
  • 请不要使用大写,网上写的被视为大喊大叫,有些人可能会觉得不礼貌。我会原谅它,因为我认为你不知道 :-)
  • 无论如何,为了解决您的问题,我想您是在询问验证规则?您想要它以便在 Id 字段未完成时显示错误吗?我不确定,你的措辞不清楚。尝试更具体。无论如何,请显示您的模型类。您是否在 ID 字段上设置了[Required] 属性?
  • 嗨,先生,让我们忘记关于模型验证的一分钟,我只想知道用户是否已经在 ID eDITOR FIELD 中写了一些东西,例如,如果他在 ti 上写了 HAHAHA,我想保存它将 HAHAHA 值转换为其他变量.. ID 是一个字符串..我只想在创建视图中将 HAHAHA 显示为只读字段

标签: asp.net hyperlink asp.net-mvc-5 readonly


【解决方案1】:

你错误地使用了 if 条件:

而不是写

@if (Html.EditorFor(model => model.Id) !=null){  SHOW id}

@if (model.Id != null) { 
 display Id here
}

您可以在此处阅读有关条件的更多信息 - https://docs.microsoft.com/en-us/aspnet/core/mvc/views/razor

UPD 您可以使用 javascript 显示用户即时编写的文本。这里有一个很好的例子来说明如何使用 jQuery -http://midnightprogrammer.net/post/handling-text-changed-event-in-aspmvc-3-with-jquery

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

<script type="text/javascript">
    $('#Id').change(function () {
        // set value into label
    });
</script>

【讨论】:

  • 先生,让我们再次澄清一下,我在创建视图中,所以我将创建一个不存在且还没有 ID 的新实体,假设用户正在填写所有字段在视图 ID TITLE 等中,我希望即时执行此操作,如果用户在 ID 编辑器字段中写入内容,ID 是一个字符串,假设他将 HAHAHA 写为 ID,现在我想要那个值拥有那个'HAHAHA'并在视图中显示为只读文本..so 在创建视图@if (Html.EditorFor(model => model.Id) !=null){ SHOW what user write in ID field}跨度>
  • @tringatringa 这应该是您问题的文本,更清晰。您无法使用 Razor 完成这项工作,因为 Razor 仅在页面加载之前运行(它用于构建最终页面)。如果您想在用户在字段中输入文本时做某事,那么您需要一些 Javascript 来检测用户何时完成在框中的写入(即,当它失去焦点时),获取字段的内容并将其写入标签。顺便说一句,如果你正在创建一个实体,那么数据库应该设置它的 ID,而不是用户,否则你不能保证唯一的 ID。
  • 非常感谢先生解释这一点,抱歉我的英语不好:$。您能解释一下我如何通过 javascript 实现这一点吗,我想要的是在这样的视图中创建一个链接(即时):@Html.ActionLink("Details1", "Details1", new { id = Model.Id }) 并且这个 Id 会自动填充用户在 ID FIELD 中写入的文本,ID 是一个字符串,让我们忘记一些关于验证、约束等的事情:)
  • "在视图中创建一个这样的链接(动态):@Html.ActionLink("Details1", "Details1", new { id = Model.Id }) "。你为什么要那个??在您提交表单并保存之前,该实体不存在,因此,如果您创建了此链接,它将无处可去。再说一次,你现在不能保证这个 ID 没有被另一个以前存在的实体占用,所以这不是一个好主意。但是,如果您坚持这种有缺陷的设计,则对此答案的编辑会为您提供如何检测字段何时被修改。
  • 嗯嗯,你用这个解释说服了我,我会在这里结束这个讨论,非常感谢
猜你喜欢
  • 2012-03-10
  • 2011-08-22
  • 2020-05-11
  • 1970-01-01
  • 2014-09-15
  • 2011-02-07
  • 2016-12-05
  • 1970-01-01
相关资源
最近更新 更多