jquery - 通过提交按钮添加验证

标签 jquery validation cakephp

我在我的应用程序中使用 Cakephp 和 JQuery。 我已经使用

创建了表单
<?php
 echo $form->create('Result',array('action'=>"submit/$formid"));

 foreach ($viewfields as $r): 
 echo $form->input($r['Attribute']['label'], array('id'=>$r['Attribute']['id'],'name'=>$r['Attribute']['label'],'type'=>'text'));
  endforeach; 
 echo $form->end('submit');?>

这将创建一个带有 id 的表单,例如...ResultSubmit1Form,其中 1 是表单

当我单击提交按钮时,它会正确提交数据。 但我想添加 JQuery 验证,就像所有字段都不能为空。

我尝试了一些例子,但它不起作用。我该怎么做......请建议我......

编辑:

我尝试过

  $("#ResultSubmit/$formidForm").submit(function(event){
   event.preventDefault();
  /* do validation of fields */
  if($("#"+<?=$r['Attribute']['id'];?>).fieldValue()==""){alert("Fill in  "+"<?=$r['Attribute']['label'];?>");
            $("#"+<?=$r['Attribute']['id'];?>).focus();
     }
  });

但是没有任何作用,这根本没有进入事件..

最佳答案

更新响应...

您正在尝试将 PHP 与 Javascript 混合使用,但这是行不通的。以这一行为例:

$("#ResultSubmit/$formidForm")

您将其打印为纯文本 js 代码,即 $formidForm不被理解为包含值的变量,它被处理为“美元符号 formidform”。如果您想打印 PHP 值,您必须执行以下操作:

$formidForm = "#userDetails";
$("<?php print $formidForm; ?>") /* $("#userDetails") */

现在它在<?php内和?> ,您的服务器知道将该特定部分解释为 PHP,而不是纯文本。

至于其余的 js 代码,当您从网页复制/粘贴给查看器时,它会是什么样子?

原始回复...

您可以将检查绑定(bind)到表单的 .submit() 事件:

$("#myForm").submit(function(event){
  event.preventDefault();
  /* do validation of fields */
});

您可以从使用 Validation Plugin 中受益也是。

关于jquery - 通过提交按钮添加验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1073974/

相关文章:

CakePHP updateAll() 问题

CakePHP 错误处理

html - 为什么 Twitter Feed 无法加载到我的网站中?

c# - 将控件传递给方法

ruby-on-rails - 简单的 Rails 格式验证未触发

php - 重定向后重新填写表格

cakephp - 多个路由前缀+登录操作不起作用

javascript - 我的 jquery ajax 代码有什么问题

javascript - 如何从 fullcalendar 中删除外部删除的事件?

javascript - 如何用 jQuery 选择这个元素?