是否有类似于Markdown的简单语言或转换为HTML表单元素的Wiki Markups之一?
例如:
name* = ___________
sex = (x) Male () Female
phones = [] Android [x] iPhone [] Blackberry
city = {BOS, (SFO), NYC}
会转换为:
<label>Name (required):</label><input type="text" name="name" id="name"/>
<label>Sex:</label><input type="radio" name="sex" value="Male" checked="checked"/> <input type="radio" name="sex" value="Female"/>
<label>Phones:</label><input type="check" name="phones" value="Android"/> <input type="check" name="phones" value="iPhone" checked="checked"/> <input type="check" name="phones" value="Blackberry"/>
<label>City:</label>
<select name="city">
<option value="BOS">BOS</option>
<option value="SFO" selected="selected">SFO</option>
<option value="NYC">NYC</option>
</select>
自己创建一个很简单,但如果任何现有的库/语言已经支持它,它将节省我一些时间在实现,文档和维护。如果库在Java中工作(因此我们可以在服务器端运行)或JavaScript(因此我们可以在客户端运行它),这将是更好的。
更新:我为此创建了github project,并maleldil实施了它。随意try it out!
答案 0 :(得分:7)
我无法找到适合我需求的库,所以我分叉了WMD项目(SO用于Markdown语法高亮显示)并将项目放在on Github上。我没有时间实施它,但maleldil亲自做到了,所以try it out!
答案 1 :(得分:4)
我在https://github.com/bradgessler/formdown处解决了问题,但语法略有不同:
Hi _________(Name)
How are you doing today? () Good () Ok () Bad
Could I have your email address? __________@(Email)
Write a few lines that describe your mood: ____________///(Mood)
[ Submit your feelings ]
这被打包为formdown
gem,可以在Rails中使用.fmd
文件扩展名来呈现表单(例如app/views/users/edit.fmd.html
)。
答案 2 :(得分:3)
不是答案。
我认为应该阅读
性=()男()女
为了获得单选按钮,因为
性= []男[]女
会产生复选框(意味着你可以是男性和女性)
如果你要实施它。此外,你需要每行一个问题,所以你会知道要分组的内容,否则任何两个()都会被链接。
我还建议你不要尝试将值放在()或[]中,因为它更容易在里面搜索文本。但您也可以将()添加为已选中,并将[]添加为已选中。如果你使用那个,你就不能在问题中找到那个字符流。
只需要我的2美分,以防你实施它。
答案 3 :(得分:1)
<< GET "/post.php";
label*: __|n="inputname"|v|p|i|c|l|disabled|readonly;
password: *|n|v|p|i|c;
select: { 'multi word value'= 'Option', 'value2'='Option 2', !'value1'='Option 3' }&|n|i|c;
(!)|n|v :label for previous radio; ()|n|v :label for previous;
label for checkboxes: [!]|n|v; []|n|v;
Message:____|rows|cols|c|p|v;
File: ^|size||types|i|c
@submit|v="Send Message";
@reset|v="Reset Form";
>>
<<
和>>
是表单开头和结尾标志"this is a label":
*
是必填字段__
是文字输入|
属性由管道(n="name of the field"|c="class of the field"
);
用于字段分隔{}
select非常类似于关联数组。 !
用于选中/选定的值:"label that comes after the value"
收音机和复选框____
是textarea ^
插入标记用于文件输入(上传标记)@submit
按钮..现在只有有人实现了这一点。 :)
答案 4 :(得分:0)
我在一段时间后遇到了http://www.jspwiki.org/Wiki.jsp?page=WikiFormsPlugin。不确定是否可以重复使用该类。
答案 5 :(得分:0)
我正在开发一个扩展Michelf Markdown的PHP解决方案。目前,支持基本的<input>
和<textarea>
元素。
它使用以下语法:
?{type}("label" "value" "placeholder" rows*cols){.class}
其中type
可以是输入类型(<input type="..."
)或textarea
,从而产生textarea。
有关代码,请参阅https://github.com/rbnvrw/markdown-forms,并随时提供帮助。