1

ハッシュ関数のプレーン テキストを非表示/表示しようとしています。入力フィールドを非表示にすることはできましたが、プレーン テキストを表示/非表示にすることはできませんでした。Web ページには入力フィールドがあり、その下にテキストがあります。私が入力していると、ハッシュされたテキストがあり、プレーンテキストを箇条書きに置き換えようとしています。

フィールド内の文字数を数えて、その回数だけ箇条書きを繰り返すことで隠してみました。しかし今、ページはまったく機能しません。

<!DOCTYPE html>
<html>
<body>

    <input 
        name="show password" 
        type="checkbox" 
        checked="checked"
        onclick="toggleType();" />
    <input 
        size="80"
        input type="text"
        rows="7"
        id="edValue" 
        type="text" 
        onKeyPress="edValueKeyPress() 
        "onKeyUp="edValueKeyPress()">
    <p id="string">Original text: </p>
    <p id="lblValue">The SHA256 hash is:  </p>

<script type="text/javascript" src="sha256.js">
</script>

<script type="text/javascript">
    function edValueKeyPress()
    {
        var edValue = document.getElementById("edValue");
        var s = edValue.value;

        var lblValue = document.getElementById("lblValue");
        lblValue.innerText = "The SHA256 hash is: "+sha256_digest(s);

        var TheText = document.getElementById("string");
        TheText.innerText = "Original text: "+s;

    }

    function toggleType() {
        var obj = document.getElementById('edValue');
        if (obj.type == 'password') {
            obj.type = 'text';
        } else {
            obj.type = 'password';
            repeat();
        }
    }
    function repeat() {
        var length = this.value.length;
        var count = document.getElementById("edValue");
        String.prototype.repeat = function(n) {
        return new Array(1 + n).join(this);
        var TheText = document.getElementById("string");
        TheText.innerText = "*".repeat(count);
    }





</script>
</body>
</html>
4

3 に答える 3

0

トグルへ :

HTML入力

<input 
        name="show password" 
        type="checkbox" 
        checked="checked"
        onclick="toggleType();" />

<input id="password" type="password" />

JavaScript

function toggleType(){
    var inputEl = document.getElementById('password');
  if(inputEl.type != "text"){
        inputEl.type = "text";
  }else{
      inputEl.type = "password";
  }
}

作業例: http://jsfiddle.net/3MRAX/1/

于 2013-10-23T18:25:06.097 に答える
0

OP、これについては申し訳ありませんが、試してみました:(これは私が得た限りです。

Javascript

function edValueKeyPress()
{
    var edValue = document.getElementById("edValue");
    var s = edValue.value;

    var lblValue = document.getElementById("lblValue");
    var hashes = s.hashCode;
    lblValue.innerHTML = "The SHA256 hash is: " + hashes;

    var text = document.getElementById("string");
    text.innerHTML = "Original text: " + s;
}

function toggleType() {
    var obj = document.getElementById('edValue');
    if (obj.type == 'password') {
        obj.type = 'text';
    } else if(obj.type == 'text'){
        obj.type = 'password';
    }
}

HTML

<input 
    name="show password" 
    type="checkbox" 
    checked="checked"
    onclick="toggleType();" />
<input 
    size="80"
    type="text"
    rows="7"
    id="edValue" 
    type="text" 
    onkeyup="edValueKeyPress();">
<p id="string">Original text: </p>
<p id="lblValue">The SHA256 hash is:  </p>
于 2013-10-23T19:22:07.270 に答える