2017-07-07 4 views
-3

私は、この値はあなたが後にスクリプトを配置する必要がjavascriptの変数HTMLフォームの値= Javascriptの変数

var paramvalue = "something" 
 
document.getElementById("client_id").value = paramvalue
<form action="login.php" method="post"> 
 
     <input type="hidden" name="clientID" id="client_id" value="" /> 
 
     <button>Login</button> 
 
</form>

+3

あなたの質問はありますか? –

+0

'var textbox = document.getElementById( 'client_id');'、次に 'textbox.value =' paramvalue'; 'はあなたがしたのと同じように値を設定します。入力タイプは非表示に設定されているので、あなたが知っていなかった場合にフォームフィールドが実際には表示されません。 'type = 'text''を表示したい場合 – clearshot66

+0

あなたは入力テキストボックスに「= hidden」と入力してください。テキストボックスを表示するには、それを削除する必要があります。また、onloadの値を設定していないので、スクリプトがHTMLの後に来るようにしてください。 –

答えて

-1
var textbox = document.getElementById('client_id');, 

その後、

textbox.value = paramvalue; 

は動作します。

type='hidden'ここでは、type='text'にする必要があります。なぜなら、非表示は表示されないからです。また、onloadを実行するように変更して、ページの読み込み時の値を置き換える必要があります。

<script type="text/javascript"> 
    function init(){ 
     var paramvalue = "something" 
     document.getElementById("client_id").value = paramvalue 
    } 
    body.addEventListener("load", init); 
</script> 



    <form action="login.php" method="post"> 
      <input type="text" name="clientID" id="client_id" value="" /> 
      <button>Login</button> 
    </form> 

また、あなたはJS機能の必要性とイベントリスナー

も行うことができ、ユーザを否定、あなたのコードを維持input type = "text"を変更し、ちょうどあなたのHTMLコード/フォームの下にスクリプトを移動することができます。

<input type="text" name="clientID" id="client_id" value="" onload="init()" /> 
+0

なぜ 'var textbox'と' textbox.value'を分けて違いがあるのか​​、なぜ 'type =" hidden "'ではこれがうまくいかないのか説明してください。また、 'init()'は、関数リファレンスをイベントリスナーとして渡す方法ではありません。 – Xufox

+0

プロセスを表示するだけです。どちらかといえば変更することができますが、どちらの方法も有効ですが、これは有効な懸念事項ではありません。第2に、関数のページロード時にイベントリスナーを追加する方法です。 – clearshot66

+0

いいえ、いいえ、いいえ。まず、コードの機能について何も変更しないため、実際の問題に対処するために何もしない2つの不要な手順を紹介します。次に、 'init()' _すぐに関数を呼び出し、 'undefined'をイベントリスナーとして渡します。これは、イベントリスナーの割り当て方法ではありません。少なくともあなたはそれを修正しました。 – Xufox

0

する必要がありますHTMLフォームのテキストボックス に「何か」を表示させたいですHTMLは実行時に入力フィールドがまだ存在しないため、エラーを返します。

<form action="login.php" method="post"> 
    <input type="hidden" name="clientID" id="client_id" value="" /> 
    <button>Login</button> 
</form> 
<script type="text/javascript"> 
    var paramvalue = "something"; 
    document.getElementById("client_id").value = paramvalue; 
</script> 
+0

'id =" client_id "'は既にあります。 – Xufox

+0

ああ、笑..それを見ていない;)私はモバイル画面上にあるので、私はそれを見て横にスクロールする必要があります> _ < –

+0

完了...私はそれを修正しました。解決策は、スクリプトをHTMLの後に置くことです –

関連する問題