2016-05-11 4 views
0

私は、現時点でグループポリシーを通じてIE5の互換モードに強制されている、イントラネットサイトを近代化しようとしています。フォーム内にx個のファイル入力ボックスを作成するjavascriptがあります。これはIE9までの互換モードで動作しますが、これより高くはありません。私は誰かが私がそれを近代化するのを助けることができたと思っていたjavascriptを本当に知らない?このjavascriptを最新のブラウザで使用するには

<SCRIPT LANGUAGE="JavaScript"> 
var i = 0, j = 0; 
var t1 = new Array(); 

function createtext() { 

    var inputLoop = document.getElementById("Many"); 
    var table1 = document.getElementById("field"); 

    for (i = 0; i < inputLoop.value; i++) 
    { 
     t1[i] = document.createElement('input'); 
     t1[i].type = 'file'; 
     t1[i].name = 'Image' + i; 
     t1[i].value = "Hello"; 
     t1[i].size = 20; 
     document.forms[0].appendChild(t1[i]); 
    } 
} 
</SCRIPT> 

<input name="b1" type="button" onClick="createtext();" value="Add"> 

は、私はIE9よりも高い「追加」ボタンの上にそれを実行すると、コードも現代のブラウザで動作何に

+0

?あなたの質問にこの答えを加えてください。 – mob41

+2

'LANGUAGE =" JavaScript "を' type = 'text/javascript''に変更してみてください – Justinas

+1

http://stackoverflow.com/questions/2267476/html-script-tag-type-or-language-or-omit-both –

答えて

0

もしません。プログラマチックに入力フィールドに値を設定することはできないため、t1[i].value = "Hello";を削除するだけです。このコードはIE9よりも高い稼働している場合、実際に何が起こる

var i = 0, 
 
    j = 0; 
 
var t1 = []; 
 

 
function createtext() { 
 

 
    var inputLoop = document.getElementById("Many"); 
 
    var table1 = document.getElementById("field"); 
 

 
    if (inputLoop.value) { 
 
    for (i = 0; i < inputLoop.value; i++) { 
 
     t1[i] = document.createElement('input'); 
 
     t1[i].type = 'file'; 
 
     t1[i].name = 'Image' + i; 
 
     t1[i].size = 20; 
 
     document.forms[0].appendChild(t1[i]); 
 
    } 
 
    } 
 
}
<input type="text" id="Many"> 
 
<input name="b1" type="button" onClick="createtext();" value="Add"> 
 

 

 
<form action=""></form>

+0

レスポンスありがとう、私はちょうどそれを試みたが、それは違いがないようです。私はそれを他の何かを妨害するために新しい文書に作成しました。 –

+0

私のテストに欠陥がありました、その作業は今 - ありがとう! –

関連する問題