0

フォームに入力テキスト ボックスがあり、値を取得してパラメーターに乗算しようとしています。

実行されず、構文エラーがあるのか​​、テキストボックス値の取得が正しくないのかわかりません。

 <script>    
 function product(parameter1) { 
     a=parseInt(document.myForm.myTextBox.value);
     return parameter1*a; 
 };
 </script>

HTML:

<form name='myForm'>
Insert your number: <input id='myTextBox' value=''><br>
</form>

<input type='button' value='CLICK HERE' onclick='product()'>
4

2 に答える 2

0
  1. onclick トリガーに引数がありません="product(10)"。10 は parmeter1 引数です。
  2. 入力タグにアクセスするには、入力タグに名前を付ける必要があると思います。そのため、入力にアクセスするためのより簡単でおそらくより高速な方法はdocument.getElementById('myTextBox')
  3. product()一部のユーザーはボタンの代わりにテキストフィールドでEnterキーを押したいかもしれないので、ボタンクリックイベントではなくフォーム送信時に関数を実行することをお勧めしますが、フォーム境界内に移動して作成する必要がありますなるtype="submit"

変更されたコード:

js:

<script>    
 function product(parameter1) { 
     a = parseInt(document.getElementById('myTextBox').value, 10);
     var result = parameter1*a;
     // alert(result);
     return result; 
 };
 </script>

html:

<form name='myForm' onsubmit="product(10); return false;">
Insert your number: <input id='myTextBox' value=''><br>
<input type='submit' value='CLICK HERE'>
</form>
于 2013-10-12T02:01:30.460 に答える
0

引数なしでメソッドを呼び出していました。値のみを取得したい場合は、以下のコードです。私はあなたがそれをどのように使うのか分かりません

あなたの番号を入力してください:

<input type='button' value='CLICK HERE' onclick='product()'>


<script> 
function product()
{
parameter1=10;
 a=parseInt(document.myForm.myTextBox.value); 
 return parameter1*a; 
 }
 </script>
于 2013-10-12T02:06:34.757 に答える