javascript - 如何制作可编辑的 bootstrap html 表单

标签 javascript html css

我正在使用 bootstrap 制作一个 html 表单。该表单将显示我存储在服务器端的一些个人用户详细信息。我希望用户能够查看他们的详细信息并根据需要进行编辑。

这是我的基本形式。它有两个字段,名称和邮政编码,这两个字段都被禁用。它有两个按钮,编辑和保存,保存按钮是隐藏的。

<form class="form-horizontal">
  <div class="form-group">
    <label for="name" class="col-sm-2 control-label">Name</label>
    <div class="col-sm-10">
      <input class="form-control" id="name" disabled>
    </div>
  </div>
  <div class="form-group">
    <label for="postcode" class="col-sm-2 control-label">Postcode</label>
    <div class="col-sm-10">
      <input class="form-control" id="postcode" disabled>
    </div>
  </div>
  <div class="form-group">
    <div class="col-sm-offset-2 col-sm-10">
      <button type="submit" class="btn btn-default" id="save" hidden>Save</button>
    </div>
  </div>
  <div class="form-group">
    <div class="col-sm-offset-2 col-sm-10">
      <button type="edit" class="btn btn-default" id="edit">Edit</button>
    </div>
  </div>
</form>

当用户点击我想要的编辑按钮时:

  • 启用姓名和邮政编码字段
  • 取消隐藏“保存”按钮
  • 隐藏编辑按钮

实现此目标的最佳方法是什么?有我应该使用的 javascript 库吗?还是定制功能才是最佳选择?

此外,这通常是正确的方法吗?我很惊讶我发现的“可编辑”html 表单的例子很少(即开始时禁用,然后通过编辑按钮启用)。我认为 bootstrap 可能提供开箱即用的东西,但找不到任何东西。

最佳答案

我在 https://codepen.io/anon/pen/vpdQmL 中整理了一个小示例

底层html/javascript如下:

<button
  type="edit"
  class="btn btn-default"
  id="edit"
  onclick="return handleEdit()">

  Edit
</button>
function handleEdit() {
  document.getElementById('name').disabled = false;
  document.getElementById('postcode').disabled = false;
  document.getElementById('edit').hidden = true;
  document.getElementById('save').hidden = false;

  return false;
}

关于javascript - 如何制作可编辑的 bootstrap html 表单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48177107/

相关文章:

javascript - Summernote 如何在文本末尾聚焦

javascript - 在每个套件之前而不是在每个测试之前运行 Mocha 设置

javascript - 如何在 react 中从父组件访问子组件的子组件?

android - 如何处理 phonegap 中的图像损坏或截断错误

html - Bootstrap 4 选项卡

html - 位置 :relative started working different than at first (asp. 净)

javascript - 使用html单击后如何为单行源代码着色?

javascript - 使用 EJS 表达 - 呈现函数调用?

css - 当其容器/父元素悬停时将 css 样式应用于元素 Angular

javascript - 屏外切换菜单将主要内容推离屏幕右侧