我正在寻找一种方法来自动将表单输出为 json 格式而不是 html。 我正在使用 JQuery dform http://plugins.jquery.com/project/dform创建动态表单。
示例输出:
{ "type" : "p", "html" : "You must login" }, { "name" : "username", "id" : "txt-username", "caption" : "Username", "type" : "text", "placeholder" : "E.g. [email protected]" }, { "name" : "password", "caption" : "Password", "type" : "password" }, { "type" : "submit", "value" : "Login" }
请帮忙
最佳答案
创建一个 renderJSON
方法并将其附加到 BaseForm
。该方法将迭代 sfFormFields
并构建一个数组,然后您可以将其传递给 json_encode
。
理想的解决方案是使用 renderJSON
方法将您自己的类注入(inject)到 sfWidgetForm
继承链中,以便各个小部件可以控制其 JSON 格式。不幸的是,Symfony 让这变得非常困难。
关于symfony1 - Symfony 表单小部件自定义渲染,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5965222/