日期:2014-05-17  浏览次数:20531 次

Jquery验证控件问题!!!在线等!!!急 急 急!!!!!
我一个ASP页面中有两个表单,一个是直接写好的,另外一个是用js弹出的表单,怎么实现弹出层的表单验证啊?
我用了jquery验证控件不管用啊 求指导!!!
代码如下
JScript code
$(function() {
    $("#form2").validate(
              {
                  /*自定义验证规则*/
                  rules: {
                      userpassword: { required: true, minlength: 6 },
                      useremail: { required: true, email: true },
                      usernamebox: { required: true, minlength: 2 }
                  },
                  /*错误提示位置*/
                  errorPlacement: function(error, element) {
                      error.appendTo(element.siblings("span"));
                  },
                  //自定义提示信息
                  messages: {
                      userpassword: { required: "请输入密码" },
                      useremail: { required: "请输入Email地址", email: "请输入正确的email地址" },
                      usernamebox: { required: "请输入姓名" }
                  }


              }
            );
})



弹出层代码
JScript code
function testMessageBox(ev)
{
var objPos = mousePosition(ev);
messContent = "<form id='form2' runat='server'><div style='text-align:left;' runat='server' id='div2'><div><input id='useremail' class='box' type='text' onclick='texteffect();' runat='server'/><br/><span style='color:Red;font-size:12px'></span></div><div><input id='userpassword' type='password' class='box'   onclick='texteffect();'  runat='server'/><br /><span style='color:Red;font-size:12px'></span></div><div><input id='usernamebox'  type='text'  class='box'   onclick='texteffect();'  runat='server' /><br /><span style='color:Red;font-size:12px'></span></div><input id='Button1' type='button' value='注册' onclick='loginMsg();'  runat='server' /><div id='Div3'><img src='../../images/logo.png'/></div></div></form>";
showMessageBox('欢迎加入我们',messContent,objPos,350);
}


------解决方案--------------------
$(function(){
//验证事件源(form2)不存在
//你把form2写到静态的,试试
 })
------解决方案--------------------
你可以把你的另一个form放在div里用jquery ui里的dialog做出弹出层效果在ok按钮事件中出发你的另一个验证form事件,然后验证通过进行下一步操作,保存值到页面或者说直接将修改值提交数据库,希望对你有帮助

HTML code

<%@ Page Title="" Language="C#" MasterPageFile="~/Views/Shared/Site.Master" Inherits="System.Web.Mvc.ViewPage<dynamic>" %>

<asp:Content ID="Content1" ContentPlaceHolderID="TitleContent" runat="server">
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="MainContent" runat="server">
    <input type="button" id="testDialog" name="testDialog"  onclick="javascript:$('#dialog').dialog('open');" value="测试Dialog" />
    <div id="dialog" title="Dialog Title">
        //放入表单然后在下面外面继续写的jquery form的验证,
        <input type="text" name="modifyValue" id="modifyValue" value="" />
    </div>
    <script language="javascript" type="text/javascript">

        var InitDialog = function () {
            $('#dialog').dialog({
                autoOpen: false,
                width: 600,
        buttons: {
          "Ok": function() {
                      //触发你的jquery form验证通过进行下一步,关闭dialog
              $(this).dialog("close");
        },
        "Cancel&