类型为Map的HTML输入字段

时间:2016-04-29 17:37:10

标签: javascript html forms validation

我有一个带有一些基本属性的模型,但也有一个属性是地图,就像这样

{
    "id": "...",
    "name": "...",
    "foo": {
        "apple": "pear",
        "dog": "cat",
        ...
    }
}

我正在寻找从HTML表单创建此内容的最佳方法,以及填写html表单以进行查看/编辑,如此

<form>
<input type="hidden" name="id"/>
<input type="text" name="name"/>
...some input field(s) for "foo"...
</form>

理想情况下,我还希望能够执行客户端表单验证,以确保地图不包含重复项,某些键,特定值等...

我还希望能够添加新的键/值对并删除现有的对。

到目前为止我实现的解决方案是一个表,其行包括键输入字段,值输入字段和删除按钮,用于向表中添加新行的单独按钮,以及表单上的submit()方法手动抓取所有键/值对并构建映射,因此它是一个非常手动的汇编/填充过程。

<form>
    <table id="foo">
    <tr>
    <td><input type="text" name="key"/><td>
    <td><input type="text" name="value"/><td>
    <td><input type="button" value="remove/><td>
    </tr>
    </table>
</form>

<script>
    $("form").submit(function(e){
    e.preventDefault();
    //loop through rows, get key/values, build JSON and submit
    });
</script>

0 个答案:

没有答案