1

私のウェブページには、Google 翻訳ツールキットによって次のコードが生成されています。

<select class="goog-te-combo">
 <option value="en">English</option>
 <option value="af">Afrikaans</option>
 <option value="sq">Albanian</option>

私が必死に作成しようとしてきたのは、変換できるスクリプトです。

<option value="en">English</option>
                to
<option value="en" **style="background: red;"**>English</option>      

スクリプトはOptionタグのValue属性を読み取り、それに応じてオンザフライで HTML にカスタム コードを追加ます。これは可能ですか?

ありがとう。

4

3 に答える 3

0

これが、Florianが言及したJQueryの回答です。

$(document).ready(function() {
var language = '';
var color = '';
$("#myselect option").each(function() {
    language = $(this).attr('value');
    switch (language) {
    case 'en':
        color = 'red';
        break;
    case 'fr':
        color = 'blue';
        break;
    default:
        color = "black";
        break;
    }
    $(this).attr('style', "color:" + color + ";");
});

$("#myselect").change(function() {
    $(this).css('color', $(this).find("option:selected").css('color'));
});

});

必要に応じて、caseステートメントに色を追加できます。また、JQueryを変更する限り、selectステートメントにmyselectなどのIDを指定してください。

JSフィドル: http: //jsfiddle.net/LBFBd/

于 2012-04-18T15:04:37.410 に答える
0

jQueryの回答を提供する人もいますが、バニラのjsの回答は次のとおりです。

次の HTML を考慮します。

<form name="my">
    <select name="sl">
        <option name="en" value="en">
    </select>
</form>

次に、この JS は次のことを行います。

document.forms.my.options['en'].style.background = 'red'
于 2012-04-18T14:35:06.353 に答える
0

jQuery を使用して、次のようなことを行います。

$(function(){
    $('.goog-te-combo').change(function{
    var selectedValue = $(this).val();

    if(selectedValue == 'en')
     {
      $('.goog-te-combo option:selected').css('background','Red');
     }
    });
});

PS:テストされていませんが、動作するはずです

于 2012-04-18T15:02:19.287 に答える