2012-02-22 21 views
-2

複数のテキストボックスに何を書き込むかをコピーするテキストフィールドで新しいウィンドウを開きたいのですが、ここには<body>に挿入する必要があります。私のコードを私のperlファイルにコピーすると、このフラグの後ろにあるすべてのものがhtmlに含まれているように色づけされます。ここで このjavascriptの構文で何が問題になっていますか?

<span class=DefMenuText>(click on "input" to open the new window)</span> 
<form name=form> 
<span class=PreText>externalID:</span> 
    <input type=text name=externalID size=12> 
    <span class=BodyText>[<a href="javascript:fill(
     'External ID', 
     'opener.document.form.external_id.value', 
     '<font face=Verdana size=2>' + 
    'test');" 
    >input</a>]</span> 

<br> 
<span class=PreText>Cage:</span> 
    <input type=text name=password size=10> 
    <span class=BodyText>[<a href="javascript:fill(
     'cage', 
     'opener.document.form.cage.value', 
     '<font face=Verdana size=2>' + 
    'test1');" 
    >input</a>]</span> 

<br> 
<span class=PreText>Born:</span> 
    <input type=text name=password size=10> 
    <span class=BodyText>[<a href="javascript:fill(
     'born', 
     'opener.document.form.born.value', 
     '<font face=Verdana size=2>' + 
    'test2');" 
    >input</a>]</span> 

<br> 
<span class=PreText>Comment:</span> 
    <input type=text name=password size=10> 
    <span class=BodyText>[<a href="javascript:fill(
     'comment', 
     'opener.document.form.comment.value', 
     '<font face=Verdana size=2>' + 
    'test3');" 
    >input</a>]</span> 

    </form> 

は、マウスを使用するために用意されていどのように多くのケージカウントするのperlスクリプト内の変数に対抗$マウスを使用して、JavaScript関数である、と私はどのように多く見るためにカウンタとしてそれを使用していますフィールドはいつでも満たされる必要があります。

function fill(name, output, msg) { 
    newwin = window.open('', '', 'top=80,left=60,width=350,height=200'); 
    if (!newwin.opener) newwin.opener = self; 
    newwin.opener.document.bgColor = "EBEBEB"; 
     with (newwin.document) { 
     open(); 
     write('<body onLoad="document.form.box.focus()">'); 
    write('<form name=form '); 
     write(' onSubmit=opener.document.bgColor="EAE8E4";window.close()>'); 
     write(msg); 
     write('<br>'); 
     write('<font face=Verdana size=2>'); 
     write('<p>You may enter your ' + name + ' here '); 
     write('<center>' + name + ':'); 
     write('</font>'); 
     for (int i = 1; i <= $mouse; i++) 
     { 
      write('<input type=text name=box size=10 onKeyUp=' + output + '_' + i + '=this.value>'); 
     } 
     write(' '); 
     write('<input type=submit value="Finish">'); 
     write('</center></form>'); 
     close(); 

    } 
} 

ご協力いただきありがとうございます。あなたがvar i = 1int i = 1を変更する必要が

+4

このコードは私を感情的にしています。 –

+3

フォントタグは私をひどくします。 – epascarello

+2

引用符で囲まれていない属性は私に与えられます。 – MacMac

答えて

3

(Firebugのを使用して時間がない中でこれを得た...)
がで修正されたバージョンを参照してください。また、http://jsfiddle.net/Vur4H/

- HTMLタグのより良い選択について、あなたの質問にコメントを参照してくださいとHTML一般的に:-)

+0

ありがとうございます。ただし、本文の[input]をクリックすると、ウィンドウにテキストフィールドが表示されません。申し訳ありませんが、私はめったにjavascriptを使っていません。 – hopup

+0

$ mouseに設定した値(ブラウザーでページのソースを確認してください)を見てください。私は$マウスを1と置き換えるとうまくいく... – Dror

関連する問題