2016-08-30 5 views
0

私はランダムに色配列から色を選択し、これら4つの値の中から選択するボタンをプログラムしようとしています。色は新しい要素に与えられます。配列からランダムな色を選択する

これらはcssで定義されたクラスです。私がやっていることで問題が見えないので、それは正しく機能していません。

<script> 
    var colorArray = [ '.st1', '.st2', '.st3', '.st4']; 
    var randomColor = Math.floor(Math.random()*colorArray.length); 
    </script> 

     <label> 
     Class: <input type="text" id="new-class" value="randomColor"> 
     </label> 

    <button type="button" onclick="addObject()"> 
    Make Ball 
    </button> 

私が間違っていることは誰にでも見られますか?

+2

に設定された機能でコードをラップする必要があります。 – Phylogenesis

+0

ボールをランダムな色にしようとしていますか? - 値はあなたの入力のjavascriptを取ることはありません... –

+0

これはあなたの問題を解決しませんが、それはあなたが欲しいものに次のステップです...私はhttp://www.w3schools.com/ jsref/prop_hidden_​​value.asp –

答えて

1

javascript変数をHTML値として使用するには、javascriptで設定する必要があります。だからあなたのvalue属性を設定するには、このようにそれを実行します。 そして、あなたはあなたがHTMLの値は次のように属性としてあなたがJavaScriptの変数を使用することはできませんonClick

<script> 
    function addObject(){  
     var colorArray = ['.st1', '.st2', '.st3', '.st4']; 
     var randomColor = Math.floor(Math.random() * colorArray.length); 
     console.log(colorArray[randomColor]); 
     document.getElementById("new-class").className = colorArray[randomColor]; 
    } 
</script> 
+2

私はこの質問を、値ではなく要素のクラス。 –

+0

私はちょうど彼がそれを使用しようとしていた場所で変数の値を取得する方法を彼に示しました。 htmlでは、それは 'value'属性でした。あなたはあなたが望むものを何でも設定できます –

関連する問題