首页 > 解决方案 > 如何让一个表单具有多个操作

问题描述

我有一个疑问,是否有可能拥有一个具有多个操作的表单(查看页面),例如我想在同一个视图页面上保存、更新和删除..如果用户单击任何按钮,那么它必须调用必要的控制器功能是否可能?

标签: formscodeignitermodel-view-controllerview

解决方案


您有一些方法可以做到这一点,但它们都需要一些 javascript 代码。

我能想到的最简单的方法是在单击每个按钮(类型为button,不是submit默认的)时动态更改表单操作,然后提交表单。

例子:

<form id="myform" name="myform" method="post" action="">
  <input id="myinput" name="myinput" type="text"/>
  [..]other inputs[/..]

  <button type="button" onClick="deleteAction()">DELETE</button>
  <button type="button" onClick="updateAction()">UPDATE</button>
  <button type="button" onClick="saveAction()">SAVE</button>
</form>

JS函数在哪里:

function deleteAction() {
    changeActionAndSubmit('/action/delete');
}

function updateAction() {
    changeActionAndSubmit('/action/update');
}

function saveAction() {
    changeActionAndSubmit('/action/save');
}

function changeActionAndSubmit(action) {
    document.getElementById('myform').action = action;
    document.getElementById('myform').submit();
}

希望我有你的疑问,这可以解决你的问题:)


推荐阅读