隐藏密码文本框并提交

时间:2015-11-11 06:53:24

标签: javascript jquery html

这是一个简单的密码检查功能,我搞砸了一下。我尝试了很多不同的方法(包括但不限于:.css(),. on('click'),. click(),. animate(),. show(),. hide(), .preventDefault()on submit),将选择器放入变量,移动各种IDs$('input[name="s"]')以及各种选择器。不确定该函数是否无效,或者脚本中是否有其他内容。我从$(document).ready()树中取出了这个函数,然后把它移到了它里面。我相信现在不是问题,但我现在开始不确定任何事情了。

我正在尝试隐藏密码文本框并提交(或更好的按钮?)并显示textarea以进行新闻输入,并附带一个按钮以附加更新。附加的To和.append()部分可以正常工作,但我似乎无法使用passwordcheck功能。有时它会提示我是否错误,但是当它正确时,if方法似乎不起作用。然后我会改变它几次,警报将不再显示,if也不会再显示。

任何帮助都将不胜感激,我可以根据要求提供任何代码段或块。

有问题的功能:

function passwordcheck() {
        var $newspass = $('#newspass');
        var $submitpass = $('#submitpass'); // <--- variables were at one point selectors
        var $newssubmit = $('#newssubmit');     //    written out, I've changed this a lot
        if ($newspass.val() === 'comecorrecT') {
                $submitpass.css('display', 'hidden');
                $newspass.css('display', 'hidden');
                $('#newsinput').css('display', 'block');
                $newssubmit.css('display', 'static');
        } else {
            alert("Try again, please.");

        }
    };

其余的脚本,供参考:

$(document).ready(function(){
// billboard functions
    var $billboard = $('.billboard');
    $billboard.mouseenter(function(){
        $(this).fadeTo('slow', 0.98);
        });
    $billboard.mouseleave(function(){
        $(this).fadeTo('slow', 0.72);
        });
    var $learn = $('#learn-more');
    $learn.hover(function(){
        $(this).fadeTo('slow', 1);
        }, 
    function() {
        $(this).fadeTo('slow', 0.6);
        });
// news and updates/appendedTo
    var $submitpass = $('#submitpass');
    var $newssubmit = $('#newssubmit');
    $submitpass.click(passwordcheck());
    $newssubmit.click(function(){
        $('#appendedTo').append('<div class="update">'+$('#newsinput').val()+'</div>');
// passwordcheck();
        });
    });

我已经和它一起工作了一段时间,我知道你们会有一两个深刻的解释。

2 个答案:

答案 0 :(得分:3)

你现在的方式,你只是传递&#34; undefined&#34;而不是函数(这将是passwordcheck函数返回的函数),因为您正在调用函数而不是在此行中传递对它的引用:

=INDIRECT("'"&N$1&"'"&"!J3")

哪个应该是

$submitpass.click(passwordcheck());

在代码的最后一个块中,在

之后
$submitpass.click(passwordcheck);

这就是说,不要使用客户端JavaScript进行身份验证,使用该网站的任何人都可以看到您要检查的密码。

答案 1 :(得分:0)

试试这个:

class User extends Visitor {
//* has getters and setters(setters via database only)
private $db;
private $username; //*
private $email; //*
private $confirmed;//*
private $nodes;
private $id;
public function __construct() {
    $this->db = Database::getConnection();
    $argv = func_get_args();

    switch( func_num_args() ) {
        case 0: 
            self::__construct1();
            break;
        case 1:
            self::__construct2($argv[0]);
            break;
     }
}
}