首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >HTML_quickform2 javascript

HTML_quickform2 javascript
EN

Stack Overflow用户
提问于 2013-03-08 06:51:02
回答 1查看 489关注 0票数 0

我在让客户端部分工作时遇到了问题。我遇到的第一个问题是,它只加载quickform.js脚本,而不是其他两个。所以我现在在头部加载它们。但我的问题仍然是表单只验证客户端。我觉得我好像错过了一些明显的东西??

代码语言:javascript
复制
require_once('HTML/QuickForm2.php');
require_once ('HTML/QuickForm2/Renderer.php');
require_once ('HTML/QuickForm2/JavascriptBuilder.php');

$form = new HTML_QuickForm2('uploads');
$fieldset = $form->addElement('fieldset');
$name = $fieldset->addElement('text', 'name', array('size' => 50, 'maxlength' => 255))->setLabel('Enter your name:');
$fieldset->addElement('submit', null, array('value' => 'Send!'));
$name->addFilter('trim');
$name->addRule('required', 'Please enter your name');
if ($form->validate()) {
echo '<h1>Hello, ' . htmlspecialchars($name->getValue()) . '!</h1>';
exit;
}
$renderer = HTML_QuickForm2_Renderer::factory('default');
$renderer->setJavascriptBuilder(new HTML_QuickForm2_JavascriptBuilder('js/quickform2'));
$form->render($renderer);
foreach ($renderer->getJavascriptBuilder()->getLibraries() as $link) {
echo $link . "\n";
}
echo $renderer;
EN

回答 1

Stack Overflow用户

发布于 2013-03-26 16:02:33

使用JavascriptBuilder的要点是只有在需要时才加载库,因此只有在使用相应的元素时才会加载“其他2”(hierselect和repeat)。

至于“仅验证客户端”,您可能指的是“服务器端”,而addRule()缺少一个参数:

代码语言:javascript
复制
$name->addRule('required', 'Please enter your name', null, HTML_QuickForm2_Rule::CLIENT_SERVER);
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15283355

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档