【问题标题】:text box to appear blank after .click function.click 函数后文本框显示为空白
【发布时间】:2015-12-20 21:11:01
【问题描述】:

所以我有一个简单的登录,需要用户将 json 文件中的值输入到两个不同的文本框中,当用户名和(在这种情况下我使用 ID 作为密码)匹配时,就会出现一个警报说...“欢迎”

.click 功能执行后,用户文本仍然保留在文本框中,如何在 .click 功能后让两个文本框都显示为空白?

$(document).ready(function() {
//Hide alert when page loads
$("#loginalert").hide();
$("#invalid").hide();  
$("#loginbtn").click(function(event){

    $.getJSON('result.json', function(jd) {
        var id = $('#userName').val();
        var name = $('#userName2').val();
        var valid = false;


        for (var i=0; i<jd.user.length; i++) {
            if ((jd.user[i].ID == id) && (jd.user[i].name == name)) {
                valid=true;
                $('#loginalert').html('<img src="' + jd.user[i].imgpath + '"><br><p> Welcome: ' + jd.user[i].name + '</p><button type="button" id="btnhide" class="btn btn-primary btn-md">Hide</button>');      
          //show the alert after loading the information  
                $("#loginalert").stop().fadeIn('slow').animate({ opacity: 1.0 }, 3000)
                $('#invalid').hide();
                $('#btnhide').on('click', function(e){
                    //console.log('here');
                    e.preventDefault();
                    $('#loginalert').hide();
                });

            }
        }
        if (!valid) {
            $('#invalid').fadeIn('slow');
            $('#loginalert').hide();

        }
    });
}); });

username 1 和 #username 2 是文本框 - 当用户输入密码时,有没有办法让用户名 2 以星号 ****** 显示 - 这个问题不是那么必要,但如果我可以也得到那个工作会很好。

谢谢大家,希望有人能帮忙:)

【问题讨论】:

  • 至于空白文本框,调用 $('#username').val('') 不会成功吗?

标签: javascript jquery


【解决方案1】:

使用&lt;input type="password"&gt; 将输入显示为星号。

通过将输入值设置为空来清除输入:$('#userName').val('');

也许考虑将你的代码分解成几个更小的函数,这样更容易理解。

【讨论】:

    【解决方案2】:
    1. 有什么方法可以让用户名 2 在星号 ****** 中显示 用户输入密码

    您可以使用将text 属性设置为passwordinput 框。但该密码屏蔽字符将是 . 而不是 *。不确定,在某些浏览器中它是否会是不同的字符。

    <input type="password" id="txtPassword" />
    
    1. .click 函数后文本框显示为空白

    您可以设置这两个文本框的两个 jQuery 对象的.val() 属性。

    $('#userName, #username2').val('');
    

    【讨论】:

      【解决方案3】:
      document.getElementById("#myTextbox").value=""; 
      

      这应该会获取您的文本框并将其值设置为“”,它是空白的。

      编辑:JSFiddle

      【讨论】:

        猜你喜欢
        • 2011-09-23
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多