![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
すみません。似たような質問を確認しましたが、自分の例とどうリンクしていいか判断できず、大変申し訳ないのですがご教示ください。
下記のようにテキストボックスに入った数字を合計するJavascriptを書きました。IEでは動きますが、Firefoxではそもそもテキストボックスに数字を入力することもできません。お分かりになる方、改善方法をご教示願えませんでしょうか。
よろしくお願いいたします。
<HTML>
<HEAD>
<SCRIPT language=JavaScript type=text/javascript>
<!--
function sum(){
var listpage = document.forms ['listPageForm'] ;
var value1 = parseFloat (listpage.elements ['TX_1'].value) ;
var value2 = parseFloat (listpage.elements ['TX_2'].value) ;
var value3 = parseFloat (listpage.elements ['TX_3'].value) ;
if(isNaN(value1) || value1=="") value1 = 0;
if(isNaN(value2) || value2=="") value2 = 0;
if(isNaN(value3) || value3=="") value3 = 0;
var sample_sum = value1 + value2 + value3;
listpage.elements ['TX_4'].value = sample_sum.toString ();
if(listpage.elements ['TX_1'].value.substring(0,1)=='0')
listpage.elements ['TX_1'].value = value1;
if(listpage.elements ['TX_2'].value.substring(0,1)=='0')
listpage.elements ['TX_2'].value = value2;
if(listpage.elements ['TX_3'].value.substring(0,1)=='0')
listpage.elements ['TX_3'].value = value3;
if(listpage.elements ['TX_1'].value=='')
listpage.elements ['TX_1'].value = 0;
if(listpage.elements ['TX_2'].value=='')
listpage.elements ['TX_2'].value = 0;
if(listpage.elements ['TX_3'].value=='')
listpage.elements ['TX_3'].value = 0;
}
function check(){
var flag = 0;
if(document.listPageForm.TX_4.value == "100"){
flag = 1;
}
if(flag){
return true;
}
else{
window.alert('合計が100%になりません。');
return false;
}
}
//-->
</SCRIPT>
<FORM name="listPageForm" onSubmit="return check()">
<TD><INPUT onkeypress='if(event.keyCode<"0".charCodeAt(0) ||
"9".charCodeAt(0)<event.keyCode) return false;'
onkeyup=sum(); style="IME-MODE: disabled; TEXT-ALIGN: right" name="TX_1" value="_TX_1_">%
</TD>
<TD><INPUT onkeypress='if(event.keyCode<"0".charCodeAt(0) ||
"9".charCodeAt(0)<event.keyCode) return false;'
onkeyup=sum(); style="IME-MODE: disabled; TEXT-ALIGN: right" name="TX_2" value="_TX_2_">%
</TD>
<TD><INPUT onkeypress='if(event.keyCode<"0".charCodeAt(0) ||
"9".charCodeAt(0)<event.keyCode) return false;'
onkeyup=sum(); style="IME-MODE: disabled; TEXT-ALIGN: right" name="TX_3" value="_TX_3_">%
</TD>
<TD><INPUT onkeypress='if(event.keyCode<"0".charCodeAt(0) ||
"9".charCodeAt(0)<event.keyCode) return false;'
onkeyup=sum(); style="IME-MODE: disabled; TEXT-ALIGN: right" name="TX_4" value="_TX_4_">%
</TD>
No.1ベストアンサー
- 回答日時:
<HTML>
<HEAD>
<SCRIPT language=JavaScript type=text/javascript>
<!--
function sum(){
var listpage = document.forms ['listPageForm'] ;
var value1 = parseFloat (listpage.elements ['TX_1'].value) ;
var value2 = parseFloat (listpage.elements ['TX_2'].value) ;
var value3 = parseFloat (listpage.elements ['TX_3'].value) ;
if(isNaN(value1) || value1=="") value1 = 0;
if(isNaN(value2) || value2=="") value2 = 0;
if(isNaN(value3) || value3=="") value3 = 0;
var sample_sum = value1 + value2 + value3;
listpage.elements ['TX_4'].value = sample_sum.toString ();
if(listpage.elements ['TX_1'].value.substring(0,1)=='0')
listpage.elements ['TX_1'].value = value1;
if(listpage.elements ['TX_2'].value.substring(0,1)=='0')
listpage.elements ['TX_2'].value = value2;
if(listpage.elements ['TX_3'].value.substring(0,1)=='0')
listpage.elements ['TX_3'].value = value3;
if(listpage.elements ['TX_1'].value=='')
listpage.elements ['TX_1'].value = 0;
if(listpage.elements ['TX_2'].value=='')
listpage.elements ['TX_2'].value = 0;
if(listpage.elements ['TX_3'].value=='')
listpage.elements ['TX_3'].value = 0;
}
function check(){
var flag = 0;
if(document.listPageForm.TX_4.value == "100"){
flag = 1;
}
if(flag){
return true;
}
else{
window.alert('合計が100%になりません。');
return false;
}
}
//-->
</SCRIPT>
</head>
<body>
<FORM name="listPageForm" onSubmit="return check()">
<TD><INPUT onchange=sum(); style="IME-MODE: disabled; TEXT-ALIGN: right" name="TX_1" value="_TX_1_">%
</TD>
<TD><INPUT onchange=sum(); style="IME-MODE: disabled; TEXT-ALIGN: right" name="TX_2" value="_TX_2_">%
</TD>
<TD><INPUT onchange=sum(); style="IME-MODE: disabled; TEXT-ALIGN: right" name="TX_3" value="_TX_3_">%
</TD>
<TD><INPUT onchange=sum(); style="IME-MODE: disabled; TEXT-ALIGN: right" name="TX_4" value="_TX_4_">%
</TD>
</body></html>
これでは だめでしょうか。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- JavaScript javascript作成してます。ラジオボタンで判定するコードを書いてます。 1 2023/07/18 11:03
- JavaScript コードレビューをお願いします。 1 2022/07/16 05:38
- JavaScript HTMLでJavaScriptを使ってパスワードの強化判定のプログラムを作成しています。 一通り作っ 2 2022/10/19 01:41
- JavaScript 1日1回引けるJavaScriptおみくじについて 1 2022/12/12 22:28
- JavaScript ①入力フォーム→②確認表示画面→③送信完了画面のコードを書いているのです、 入力フォームから受け取っ 2 2022/05/10 16:45
- JavaScript 入力フォームの javascript で メールアドレスの正規チェックをを行い、ボタンをクリックして 2 2022/04/27 16:06
- JavaScript プログラムがうまく動きませんレビューお願いします 1 2022/07/10 05:08
- PHP 入力した部分を表示させたまま(保持)するにはどうすれば良いでしょうか? 1 2023/01/25 11:14
- JavaScript セレクトボックスで配列を呼び出したい。 1 2022/07/08 20:14
- HTML・CSS ボタンをクリックした時に、入力フォームのすぐ下部に、「入力欄が空白です」というテキストメッセージが表 1 2022/04/27 16:25
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
javascriptでhiddenに二次元配...
-
value内に変数を入れたい
-
VB.NET DateTimeの型について
-
複数のcookieでの保存
-
ラジオボタンと連動して文字列...
-
name属性が同じフォームが複数...
-
hiddenのvalueの値を変えたい
-
テキストボックスに入力された...
-
setIntervalの間隔を途中で変更...
-
return trueとreturn falseの用...
-
プルダウン 項目が多いので先頭...
-
formのfileの値をhiddenでも持...
-
javascriptでクイズ
-
【UWSC】HTML内のある部分を抽...
-
javascriptでセレクトボックス...
-
特定<table>内の<td>の色を変える
-
追加ボタンを押した際に ok ボ...
-
innerHTML内では改行は禁止?
-
submitした値を返したい
-
ファイル選択ダイアログが表示...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
value内に変数を入れたい
-
hiddenのvalueの値を変えたい
-
javascriptでhiddenに二次元配...
-
複数のsubmitボタンで押された...
-
テキストボックスに入力された...
-
switchを使って四則演算のプロ...
-
VB.NET DateTimeの型について
-
クイズ作成:15個の問題から5個...
-
C言語クイックソートの比較総回...
-
セレクトボックスの初期選択状...
-
ラジオボタンの選択で解答・点...
-
子から親へチェックボックスの...
-
ラジオボタンと連動して文字列...
-
setIntervalの間隔を途中で変更...
-
JAVASCRIPTで、ボタンを押した...
-
sessionStorageを調べています。
-
クリックの度に加算していくには?
-
マクロ オブジェクト変数With...
-
3桁区切りのカンマをつけたい...
-
selectboxのoptionタグのvalue...
おすすめ情報