0

这是代码

<script type='text/javascript'>

$("#focusform").submit(function(event) 
{

event.preventDefault();

  var $form = $( this ),

        usname = $form.find( 'input[name="name"]' ).val(),

        uspass = $form.find( 'input[name="pass"]' ).val();
        if($('#chk').is(':checked')) var checked='yes';
        else var checked='no';
          $.post("/login/submit/", { name: usname, pass: uspass, checkbox: checked, template_framed:"yes",submit: "yes" }, function(data)
 {


     if(data=='error'){
       alert("You have made an error");

       return false;

     }
     else{
        if(checked=='yes')window.location='/usercookie/';
        else window.location='/login/success/';
        return true;

     }
  });

 });

 </script>

但是浏览器不想提示是否保存密码。你不能帮我吗?

4

3 回答 3

1

我会做一个预检查并使用 Ajax 来检查是否正确,这将返回错误或成功消息,如果成功继续发布表单,否则使用 Ajax 显示错误

于 2012-12-03T12:04:50.207 回答
0
<iframe id="temp" name="temp" src='/engine/blank.html' style="display:none"></iframe>
<form id='focusform' target='temp' method='post' onsubmit="return mySubmit()">
...
</form>
<script type='text/javascript'>

function mySubmit()
{

  var $form = $("#focusform"),

        usname = $form.find( 'input[name="name"]' ).val(),

        uspass = $form.find( 'input[name="pass"]' ).val();
        var checked = ($('#chk').is(':checked')?'yes':'no');
          $.post("/login/submit/", { name: usname, pass: uspass, checkbox: checked, template_framed:"yes",submit: "yes" }, function(data)
 {


     if(data=='error'){
       alert("<?=$lang['made_error']?>");

     }
     else{
        alert("Loged in");
     }
  });


}

 </script> 

它有效:)

于 2012-12-04T05:24:30.213 回答
0

<form>如果您没有actionURL 并且没有提交按钮,浏览器将不会提供保存密码。您的密码字段也必须是<input type="password" />.

当您尝试以这种方式使用 jQuery 分配提交功能时,它不起作用:

$("#focusform").submit( ...

但是,如果您onsubmit向表单添加属性,它确实有效:

<form id="focusForm" action="page.php" method="post" onsubmit="return mySubmit()">
                                                               ^^ here

然后在您的提交函数中返回 false:

function mySubmit()
{
    // do the jquery ajax or whatever you want to do here

    return false;
}
于 2012-12-03T12:06:05.403 回答