jQuery 日期选择器在 Ajax 上返回。我应该评估()吗?

发布于 2024-10-14 22:13:55 字数 529 浏览 1 评论 0原文

我正在使用 Zend_Framework 和 jQuery 创建一个表单生成器。我遇到了一个假设性问题,我想得到答案。

在构建表单时,Ajax 返回一个元素,该元素应该是一个日期选择器。我知道,我可以使用默认类(如 .calendar)将输入转换为日期选择器,并使用 livequery() 将事件重新绑定到这些输入。

现在,当我需要日期选择器具有不同的设置时,问题就出现了。例如,

  1. 允许选择 20/10/2010 以上所有日期的日期选择器
  2. 只允许选择星期日的日期选择器。

据我所知,我只有 1 种方法来解决这个问题:

通过 Ajax 加载所需的 jQuery 代码,然后 eval() 它。

这是执行此操作的正确方法吗?如果我知道代码已正确清理,这样做可能会存在哪些陷阱?

如果有人可以提供更好的解决方案,请这样做!

I'm creating a form builder using Zend_Framework and jQuery. I've run into a hypothetical question, that I would like an answer to.

While building a form, the Ajax returns an element, that should be a datepicker. I know, that I can turn the input into a datepicker by using a default class, like .calendar and to use livequery() to re-bind the events to these inputs.

Now the problem arises when I need the datepickers to have different settings. For an example,

  1. A datepicker that allows all dates above 20/10/2010
  2. A datepicker that allows only sundays to be selected.

As far as I can tell, I have only 1 way to approach this problem:

Load the jQuery code it requires via Ajax, and then eval() it.

Is this the right way to do this, and what could be the pitfalls of this, if I know that the code is properly sanitized?

If anyone can provide some better solution, please, do!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

滴情不沾 2024-10-21 22:13:55

将 datepicker 元素附加到文档后,您应该能够对其创建新的调用。这意味着每次您使用 ajax 时,它都会创建一个新的日期选择器实例,但如果您要更改设置,我很确定这是唯一安全的方法。将新的日期选择器选项添加到您的成功处理程序中,然后从那里开始。

Once you have appended the datepicker element to the document, you should be able to create a new call on it. This would mean that every time you used the ajax it would create a new datepicker instance, but if you are changing the settings I'm pretty sure that's the only safe way to go about it. Add the new datepicker options to you success handler and go from there.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文