2017-05-08 5 views
2

"name"というクエリ文字列値を取得する関数を使用しました。つまり、パーティーの招待サイトを想像してください。Javascript ID値をフォームのプレースホルダに渡すにはどうすればよいですか?

https://cometomyparty.com?name=phil

用いられる関数です。持つことを楽しみにして

script type="text/javascript"> 
    function getQuerystring(){ 
    var q=document.location.toString(); 
    q=q.split("?"); 
    q=q[1].split("&"); 
    var str="" 
    for(i=0;i<q.length;i++){ 
     tmp=q[i].split("=") 
     str+=" "+tmp[1]+"<br />" 
             } 
    document.getElementById("name").innerHTML=str 
        } 
    onload=function(){ 
     getQuerystring() 
       } 
</script> 

その後、私は私がすなわち見出しで、私のページにこれを使いたいのid =「name」を使用しての「name」の値を呼び出すことができ、私が言うことができる、フィルは、あなたはパーティーで...

それはうまくいきます。私が持っている問題は、私も同様に使用しているフォームがあり、その中にPlaceholderフィールドがあります。

<div class="form-section"> 
    <input type="text" name="name" class="validate-required" placeholder="Names"> 

「名前」の値をここのプレースホルダに挿入するにはどうすればよいですか?最終的な結果は、招待状が複数の招待者間で同じURLで動作することになりますが、URLが変わるだけです。 RSVPフォームは、URLの内容をプレースホルダとして反映しますが、ユーザーが間違っていた場合は更新できます。

アドバイスありがとうございます。

+0

にIDを挿入する必要があります。だから、あなたは関数から得られるどんな値の 'placeholder'の値を変更したいのですか?そうであれば 'document.getElementById(" foo ")。placeholder =" foo "'を使用できますか? – Mohammed

+0

私の答えを見て、それはあなたの質問を解決する権利としてマークしてください。 –

+1

Otávioありがとう、あなたの提案は私の挑戦を解決! –

答えて

4

このプレースホルダを見つけるとjQuery

<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script> 
<script> 
    $(document).ready(function(){ 
     $('#name').attr("placeholder", "your place holder here"); 
    }); 
</script> 

を使用して変更することは、$ VARだ場合も、引用符が

$('#name').attr("placeholder", $str); 

それとも

<script type="text/javascript"> 
    function getQuerystring(){ 
     var q=document.location.toString(); 
     q=q.split("?"); 
     q=q[1].split("&"); 
     var str="" 
     for(i=0;i<q.length;i++){ 
      tmp=q[i].split("="); 
      str+=" "+tmp[1]+"<br />"; 
     } 
     document.getElementById("name").innerHTML=str; 
     document.getElementById("name").placeholder=str; 
    } 
    onload=function(){ 
     getQuerystring(); 
    }; 
</script> 

document.getElementById("name").placeholder="value here" JavaScriptを使用してのようになる必要はありません。もしそれがvarだから、引用符は必要ありません

あなたは私があなたの質問を理解している場合わからない、あなたのHTML入力フィールド

<div class="form-section"> 
    <input type="text" id="name" name="name" class="validate-required" placeholder="Names"> 
+2

jQueryはちょうどこの1つの使用のために過剰ですが、彼はそれを使用しているとは言いません。まだ正解です。 –

+1

あなたは正しいですが、jqueryは同じことをするコードがずっと少なくなっています。とにかく私もjavascriptのバージョンを作ったのです。 –

+1

確かに公正なポイント。そして、jQueryは非常に信頼性が高く、便利です。 –

関連する問題