【问题标题】:Fastest way to build form - PHP/jQuery/CodeIgniter构建表单的最快方法 - PHP/jQuery/CodeIgniter
【发布时间】:2011-08-22 22:13:58
【问题描述】:

一般来说,处理表单的方法有很多,但我想知道是否有人有一个可靠的解决方案,可以用于几乎所有的应用程序,可以快速构建表单并包含所有类型的表单元素。

我目前使用的只是 CI 的内置表单验证,然后构建一个表单,但即使这样,我也觉得花费的时间太长了......有什么建议吗?

【问题讨论】:

  • 很想找到类似的东西,从/到 JSON 加载/存储表单配置,并将数据的 JSON 发布到指定的 URL。
  • 为什么不建立一个满足你需要的类呢?

标签: php jquery codeigniter


【解决方案1】:

有一个 jQuery 插件(称为“dform”),它采用 JSON 输入来动态构建表单。我已经使用了一段时间了。

Please take a look at the following URL:
http://neyeon.com/p/jquery.dform/doc/files2/readme-txt.html

快速使用:

var formdata =
{
"action" : "index.html",
"method" : "get",
"elements" :
[
    {
        "name" : "textfield",
        "label" : "Label for textfield",
        "type" : "text",
        "value" : "Hello world"
    },
    {
        "type" : "submit",
        "value" : "Submit"
    }
]
};

$("#myform").buildForm(formdata);

// Or to load the form definition via AJAX
$("#myform").buildForm("http://example.com/myform.json");

【讨论】:

    【解决方案2】:

    https://github.com/zwacky/codeigniter_form_builder - 是一个用于 codeigniter 的表单构建器库。它具有广泛的分页方式,应该易于使用。

    【讨论】:

      【解决方案3】:

      在我看来,这些都不是完全令人满意的解决方案,但它们可能对你有用:

      http://formigniter.org/app/(在线生成工具)

      http://formtorch.geekhut.org/(在线生成工具,包括javascript)

      http://www.frankmichel.com/formgenlib/user_guide/introduction/getting_started.html(CI 库)

      http://www.getfuelcms.com/user_guide/libraries/form_builder(基于 CI 的 Fuel CMS 的一部分)

      【讨论】:

        【解决方案4】:

        @dave 我已经使用 CI 有一段时间了,一般来说,使用它的内置表单支持或自制它真的没有什么不同。就我个人而言,我倾向于使用自制的手写形式。一起避免 CI 的表单支持。尽管 CI 确实为更多新手用户(和大师一样)提供了“易用性”。我一直和你有同样的感觉,它有一种限制的感觉,当你使用那里的系统为 CI 制作表单时,你基本上做的事情与使用标准 HTML 相同,但也实现了在 CI 的语法中,因此它可以更好地处理它。对我来说,我做了很多与 AJAX 相关的工作,所以标准支持对我没有多大帮助,而且通常会妨碍我。我也曾在一些专业级别的团队中工作过,他们使用 CI 作为后端框架,但也对 CI 所具有的表单支持有同样的厌恶。更多的时候然后更少的它在前端和后端的开发方式中得到了那么它做了任何好事。

        更多次然后更少,我们总是会走标准 HTML 表单的路线,只使用标准 PHP 方法来获取发布的数据,然后在一个元素到元素的需要上自制我们自己的过滤器,所以我们知道我们是获得我们想要获得的数据,而不必想出一些绕过任何限制的方法。

        因此,您的答案的简短版本就是使用标准的 html/php 表单处理。你会发现更多的支持如何独立处理你的输入,而不是 CI(意见问题)。同样以这种方式处理您的表单并不会破坏您仍然可以在 CI 中使用其他 lib 和 mod 轻松工作的工作

        我知道这不是你问题的直接答案,但我觉得我至少应该投入 2 美分。CI 是一个很好的框架,但它是基于 PHP 构建的,所以如果你可以用 PHP 做到这一点,你可以在 CI 中执行,如果处理表单,我会走 PHP 的路线,而不是使用 CI

        【讨论】:

          【解决方案5】:

          我使用 CodeIgnitor,但我刚刚创建了自己的验证类 - 您可以通过自己来获得更大的灵活性和范围,并节省更多时间......无论如何,这就是我的发现。

          我只是把它缩小了,所以一个方法接受一个输入数组,然后循环并检查它们是否为空并返回一个缺失的数组,如果该字段在缺失的数组中突出显示它或执行任何设计一起去。简单。

          至于 codeIgnitor 验证,我从来没有觉得我需要使用它。

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 2011-10-06
            • 2011-02-09
            • 2011-11-01
            • 2011-04-11
            • 1970-01-01
            • 2010-10-12
            • 2020-01-16
            • 2011-11-08
            相关资源
            最近更新 更多