【问题标题】:Server vs. Client side form auto-fill服务器与客户端表单自动填充
【发布时间】:2010-01-04 14:43:05
【问题描述】:

最近,当用户在我构建的自定义 CMS 中编辑记录时,我一直在使用客户端 jQuery 脚本来填写表单。服务器端脚本是 PHP。

怎么做不是我的问题。我的问题是征求意见。我的客户必须打开 javascript 才能使用我的 CMS,到目前为止这还不是问题,因为大多数用户没有提出问题或只是不知道如何将其关闭。使用像 PHP 这样的服务器端脚本需要更多的代码来填充诸如 、radio 和 checkbox 元素之类的东西。使用 jQuery 让我的 php 填充一个对象并将值传递给各种表单元素,从而变得轻而易举。

欢迎对此提出想法。感谢阅读。

编辑: seegee 是对的 - 上面没有足够的信息。我正在从数据库中提取一个条目并填充表单,以便用户可以更改现有信息。 javascript 在编程方面远没有那么繁琐。我觉得我已经知道这个问题的安全答案了。我只是在寻找你的想法。抱歉,如果这里没有明确的答案——我认为这可能是一个有趣的讨论。

【问题讨论】:

  • 不确定这里的问题到底是什么。您是在问是否可以期望用户在您的 CMS 中启用 JavaScript?
  • 请改写您的问题,删除您不想知道的内容并尝试提出实际问题。
  • 男人们在这里可以暴躁!这不像我写的“如何更好地 php?”外交和机智应该让你在这个网站上获得一个徽章:)

标签: php jquery forms


【解决方案1】:

如果没有必要,并且不会产生太大影响(大多数用户不会体验到差异),那么就不要这样做。另一方面,如果您计划在未来扩大您的客户群,并期望更多人使用此应用程序,如果它是您应用程序的必要功能,我会继续提供。

当涉及到时间、金钱和要求时,您应该问问自己是否有必要。如果有必要,应该赋予它什么优先级。从我读到的内容看来,这不是立即需要的,但将来可能会。因此,我可能会开始集思广益,思考如何有效地做到这一点 - 可能会开始查找一些表单处理类,或者开始设计自己的类。

【讨论】:

  • 感谢乔纳森提供了一点见解 :)
【解决方案2】:

编写 PHP 来为 javascript 创建变量以在页面加载后更新表单元素似乎是一种相当迂回的方法。我用 PHP 做。没那么难:

<?php if($var) echo 'checked="checked"' ?>

并且您没有加载页面,然后在 javascript 运行时更改。

-- 编辑:我假设您正在谈论在用户执行任何操作之前填写表格。如果你说的是用户做事之后/之后,javascript 是非常合适的。

【讨论】:

  • 你之前的假设是对的 - 我的问题没有提供足够的信息。在这种情况下,javascript 用于从数据库中的条目填充表单。您的 PHP 对于复选框来说绝对足够简单。一个包含 50 个选项的 select 元素呢?感谢您的想法。
  • 对于一个选择,遍历选项并添加 或者你复制和粘贴很多:) 更好如果可以在数组中获取值,则循环,这对于验证可接受的输入也很方便。
【解决方案3】:

我将假设用户在使用 jQuery 发送页面之前单击“adit”按钮或其他内容来编辑页面。

为什么不使用 PHP 会话?当用户单击编辑按钮时,将整篇文章(或其他内容)加载到会话中,然后在编辑页面上回显。这样可以避免用户没有启用 javascript 的问题。

【讨论】:

    猜你喜欢
    • 2018-06-14
    • 1970-01-01
    • 2019-03-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-06-21
    • 2012-07-25
    • 2019-03-18
    相关资源
    最近更新 更多