電卓用に作成したスクリプトをテストしています。HTMLフォーム要素を使用してユーザー入力値を取り込み、そのボタンがクリックされるたびに外部スクリプトで関数を呼び出しています
ここに私のHTMLコードがあります:
<body>
<script>
$(document).ready(function () {
//on add buttton depressed, fire event which calls the initializer function
$('#form3').on('click','button',function () {
var ans = $(initializer());
$('#form6').text(ans);
});
});
</script>
<div id="wrapper">
<p>INPUT TEXT IN ROMAN NUMERALS</p>
<form id="form1" class="" >
<input type="text" id="form2" class="" width="1"/>
<button name="button" id="form3" class=""> + </button>
<input type="text" id="form4" class="" />
<button name="button2" id="form5" class=""> = </button>
<input type="text" name="result" id="form6" class=""></input>
</form>
</body>
</html>
#form3
これは、ユーザーがボタンをクリックしたときに呼び出される外部 JavaScript ファイルにある関数ですID
(要素に含めますhead
) 。
function initializer ()
{
//contains user input in first box
var userinput_a = $('#form2').val($(this).val().toUpperCase());
//contains user input in second box
var userinput_b = $('#form4').val($(this).val().toUpperCase());
try
{
if(!validity(userinput_a, userinput_b))
{
throw exception;
}
}
catch(err)
{
alert('Wrong values put in the right value');
}
var combinedtext = userinput_a + userinput_b;
var stage1 = romanexpanded(combinedtext); //text contains roman to expanded
var stage2 = expandedtoroman(stage1); //text contains expanded to roman
return stage2;
}
コードを調べましたが、関数を呼び出すボタンをクリックするたびに、入力ボックスの値が消えるたびに、スクリプトが正しく実行されていない原因がわからないようです。
どんな助けでも大歓迎です。ありがとう!
編集:私はjavascriptデバッグコンソールを使用しました.コードを見ていくと、イニシャライザ関数を呼び出す方法またはフォーム値にアクセスする方法のいずれかであると推測されます.唯一の問題は、何が問題なのかわかりません私の構文またはロジック。