yesod在javascript中填写特定的表单字段

时间:2013-08-08 21:24:14

标签: javascript haskell yesod

我有一个简单的yesod形式:

aYesodForm :: Form Text
aYesodForm = renderDivs $ id
    <$> areq hiddenField "" Nothing

大致生成:

<input type="hidden" id="h2" name="f2" value="">

我想从javascript中填写它:

document.getElementById('h2').value="foo"

但是将'h2'硬编码到.julius文件中是不好的做法,因为它是自动生成的并且可能会发生变化。

runFormPost的返回类型不会返回它生成的字段ID,而是插入到.julius文件中。

在javascript中填写yesod生成的表单字段的最佳方法是什么?

1 个答案:

答案 0 :(得分:3)

使用FieldSettings参数生成表单时,您应该能够创建自己的ID。 FieldSettings数据类型可在此处找到:http://hackage.haskell.org/packages/archive/yesod-form/1.3.0/doc/html/Yesod-Form-Types.html

像这样(未经测试):

<$> areq hiddenField (FieldSettings (SomeMessage "") Nothing (Just "myId") Nothing []) Nothing