私は単純なフォーム(テキストフィールドと送信ボタン)を持っています。私はユーザーに番号を提出させようとしており、結果の数字には1つのdiv(divのセットから)が表示されます。Javascript - テキストフィールドを送信する、Divを表示する、その他すべてを非表示
this exampleをベースとして試してみました(ユーザーがリンクをクリックすると、divを表示し、他のユーザーを非表示にします)。
私のテストは以下の通りです:
var divState = {};
function showhide(oFrm) {
var dividnum = oFrm.Inputed.value;
var prepar = "para";
var divid = prepar + theInput; /* should result in something like "para52" */
divState[divid] = (divState[divid]) ? false : true;
//close others
for (var div in divState){
if (divState[div] && div != divid){
document.getElementById(div).style.display = 'none';
divState[div] = false;
}
}
divid.style.display = (divid.style.display == 'block' ? 'none' : 'block');
}
http://jsfiddle.net/LfzYc/431/
注:私は全くJavaScriptで堪能ないです、私は難しさを持っています理由です。
また、関数を追加したいと思います...入力された数字が1-4の間でない場合は別のdivを表示してください。おそらくidはparaEnd
です。
。より多くの段落を大きくできるようにするには、コードをどのように変更できますか?私は142のエントリを持っています...(だけでなく4)。私はライン7を改訂する必要があると仮定しています... ['1'、 '2'、 '3'、 '4']。 – user3412194
if文を次のように変更しようとしました:if(dividnum> = 142){...でも動作しませんでした – user3412194
@ user3412194 [次のjsFiddle](http://jsfiddle.net/LfzYc/438 /)コードを更新しました。 –