【问题标题】:create a refresh button for Text box为文本框创建一个刷新按钮
【发布时间】:2020-10-28 09:21:15
【问题描述】:

我正在尝试在 html 帮助程序中为我的 model.id 创建一个刷新按钮。我正在处理 ERP 项目,所以多人将使用该应用程序,所以我需要刷新按钮所以我尝试了这个 MVC在此处输入代码

 @Html.EditorFor(model => model.Id, new { id="code", @class = "form-control "})
<button id="button1" style="border: none;width: 50px;height: 50px;" value="Refresh"><i class="fas fa-sync"></i></button> 

javascript---

 $("#button1").click(function (event) {
        alert('Clicked')
        $("#code").val('model.Id')
    }); 

但这不起作用,请提供一些建议在此处输入代码

【问题讨论】:

  • 使用 document.on('click') 而不是点击
  • 您似乎正在尝试从服务器刷新“多人使用该应用程序”)- 是这样吗?听起来您需要进行 ajax 调用才能获取最新值

标签: javascript jquery model-view-controller


【解决方案1】:

实现此目的的最简单方法是向您的 EditorFor 中的元素添加一个新的 data 属性,以显示该值。此属性应保存控件的起始值。然后在您的 JS 中,当单击“刷新”按钮时,将当前值设置回原来的值,如下所示:

$("#button1").click(function(e) {
  $("#code").val(function() {
    return $(this).data('original-value');
  });
});
#button1 {
  border: none;
  width: 50px;
  height: 50px;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<!-- @Html.EditorFor(model => model.Id, new { id="code", @class = "form-control", }) -->
<input type="text" id="code" data-original-value="foobar" value="foobar" />
<button id="button1" value="Refresh"><i class="fas fa-sync"></i> Refresh</button>

【讨论】:

  • 什么是原始值,
  • 我描述的数据属性,并添加到示例中的元素中。
猜你喜欢
  • 2018-01-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-09-27
  • 2019-08-30
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多