2017-09-26 79 views
2

你好devs我是相当新的反应和js我坚持这个问题任何帮助将不胜感激很多,我有一个基本的形式编码的反应,从用户接受输入,当用户点击登录和凭据经过验证和验证,那么浏览器应询问用户是否要将密码保存在浏览器内存中。在反应,我如何强制浏览器要求保存密码?

HTML:

<form onSubmit={this.SignmeIn} autoComplete="on" > 
    <div className="form-group"> 
    <label htmlFor="email">email</label> 
    <input type="email" className="form-control" name="email" id="email" placeholder="Email" required="" ref="email" /> 
    </div> 
    <div className="form-group"> 
    <label htmlFor="password">password</label> 
    <input type="password" className="form-control" name="password" id="password" placeholder="Password" required="" ref="password" /> 
    <span id="ErrorMessage"></span> 
    </div> 
    <div className="form-group"> 
    <button type="submit" className="btn btn-default btn-lg">sign in</button> 
    </div> 
</form> 

,并在这里被称为上提交表单的SignmeIn功能

SignmeIn: function (e) { 

    e.preventDefault(); 

    var formData = { 
    "email": this.refs.email.value, 
    "password": this.refs.password.value 
} 

    $ 
     .ajax({ 
      username:$('input[name=email]').val(), 
      password:$('input[name=password').val(), 
      type: 'POST', 
      url: url + '/signin', 
      data: formData 
     }) 
     .done(function (data) { 
      console.log(data); 
      if (typeof data.UserName ==='undefined'||!data.UserName) { 
       alert('Wrong username or password'); 
      } 
      else{ 
       alert('welcome ' + data.UserName + "! You are signed in "); 
      } 
     }) 
     .fail(function (data) { 
      console.log('data'); 
     }) 

我希望浏览器显示一个对话框,询问用户是否同意或不用户想要将密码保存在浏览器缓存中。

回答

0

我的猜测没有反应特异性改变,添加属性autocomplete到表单中应解决的问题,你在骆驼的情况下,而不是小写添加的属性,所以更换成小写应解决的问题。

+0

好吧,但这并不能解决问题,因为,在处理程序中我阻止提交表单,而是通过Ajax调用。 – Jawad

相关问题