2011-10-12 6 views
0

私はオプションが異なるタグを持っています。オプションを選択すると、入力フィールドのfont-familyを変更するはずです。これはFirefoxでうまくいっていますが、IEやChromeでは応答しません。これは私の選択肢の様子ですjquery attr()はFirefoxでのみ動作しますか?

<option onclick="$('#blogEntrySubject').attr('style', 'font-family:Arial;');">My option</option> 

これは間違っていますか?

+1

質問に間違いがありますが、onclick属性の末尾に追加の(おそらく問題のある)一重引用符があります。 –

+1

関連性があるかもしれませんが、タグの末尾に余分な一重引用符があります: '); '"> ');"> 'ではありませんか? – Widor

+0

あなたの右ですが、私の側からの誤植です。ごめんなさい。 – Paparappa

答えて

1

する必要がありますこれは、ソリューションです:

<option>は、Firefox以外のブラウザでは、デフォルトでのonclickイベントを持っていません。だからあなたがしなければならないのは、<select>タグにonchangeイベントを追加することです。私はフォントを変更するだから私はこのように私のオプション設定:

<option value="Arial">Arial</a> 

をそして、私の選択は次のようなものになります。

<select onchange="$('#blogEntrySubject').css('font-family', this.value);"> 

これは、すべてのbroswersで動作します。入力いただきありがとうございます。

7

私は間違っていると言えるでしょう、はい。直接適用されるスタイルを操作するためcss(propertyName, value)メソッドを使用します。

$('#blogEntrySubject').css("font-family", "arial"); 

また、今ではコメントで述べたように:浮遊引用符を注意してください。

+0

これはfirefoxでも有効ですが、chromeや他のブラウザでは機能しません。何が起こったのか考えられないでしょうか? – Paparappa

+0

select>オプションの代わりにリンクを使用すると、chromeで動作することがわかりました。なぜこれはあなたが知っていますか? – Paparappa

2

$('#blogEntrySubject').css('fontFamily', 'Arial');

+0

fontFamilyが動作しないようです。私はselect>オプションの代わりにリンクを使用するとchromeで動作することに気付きました。なぜこれはあなたが知っていますか? – Paparappa

関連する問題