2017-06-11 18 views
0

このコードをどのようにして画面に表示できますか?私は手紙が順不同であることに気づくプログラムを作っています。それはdが表示されます。私はコア機能が働いていますが、表示に問題があります。ここまで私はこれまで何を得ているのですか?ありがとう。コードの表示に問題がある

HTML

<form id="Awesome"> 
    <label>Input Text Here: </label><input type="text" id="txtBox"> 
    <br><br> 
    <label>Missing Letter: </label><input type="text" id="Results"> 
    <br><br> 
    <input type="button" value="Calculate" id="Execute" onclick="displayMissingLetter()"> 
</form> 

Javascriptを

function displayMissingLetter(str) { 
    var numbers = str.split('').map(function(letter) { 
    return letter.charCodeAt(); 
    }); 

    for (var i = 0; i < numbers.length; i++){ 
    if (numbers[i+1] - numbers[i] > 1){ 
     return String.fromCharCode(numbers[i] + 1); 
    }  
    } 

    return undefined; 
} 
+0

displayMissingLetterの結果で何が起こるのでしょうか? –

答えて

1
function displayMissingLetter() { 
    var str = document.getElementById('txtBox').value; 
    var letters = []; 

    var numbers = str.split('').map(function(letter) { 
    return letter.charCodeAt(); 
    }); 


    for (var i = 0; i < numbers.length; i++){ 
    if (numbers[i+1] - numbers[i] > 1){ 
     letters.push(String.fromCharCode(numbers[i] + 1)); 
     }  
    } 
    document.getElementById('Results').value = letters.join(''); 
    return undefined; 
} 
+0

ご協力ありがとうございます! – theNoobProgrammer

+0

あなたは大歓迎です!実際にDOMを操作して値を表示するコードを追加するのを忘れてしまっただけです:) – sadpanda

0

最初の問題は、あなたがdisplayMissingLetter機能(onclick="displayMissingLetter()")に任意のパラメータを渡していないということです。これは、最初のパラメータとして文字列がこのようなものを使用して呼び出す必要があることを意味します。onclick="displayMissingLetter(txtBox.value)"

第2の問題は、この関数の戻り値で何もしていないということです入力値のResultsの値としての結果の値。その場合は、次のようなことができます。onclick="Results.value = displayMissingLetter(txtBox.value)"

もう1つの方法は、以下の例のようなものを使用します。

function getMissingLetter(str) { 
 
    var numbers = str.split('').map(function(letter) { 
 
    return letter.charCodeAt(); 
 
    }); 
 

 
    for (var i = 0; i < numbers.length; i++){ 
 
    if (numbers[i+1] - numbers[i] > 1){ 
 
     return String.fromCharCode(numbers[i] + 1); 
 
     }  
 
    } 
 
    return undefined; 
 
} 
 

 
Execute.onclick = function(){ 
 
    var userInput = txtBox.value; 
 
    var missingLetter = getMissingLetter(userInput); 
 
    if(missingLetter){ 
 
    Results.value = missingLetter; 
 
    } 
 
}
<form id="Awesome"> 
 
    <label>Input Text Here: </label><input type="text" id="txtBox"> 
 
    <br><br> 
 
    <label>Missing Letter: </label><input type="text" id="Results"> 
 
    <br><br> 
 
    <input type="button" value="Calculate" id="Execute"> 
 
</form>

関連する問題