2

我需要根据下拉列表选择更改文本的颜色。

<select id="room2">
    <option>#0808cf</option>
    <option>#0E9E26</option>
</select>
<input type="text" id="txtColor">
   John: <p style="color:#0808cf" > test </p>

jQuery

$('#colors').change(function(){
   $('#txtColor').val($("#colors").val());
   var fontColor =  $('#txtColor').val();

});

我不希望更改出现在 css 中,因为选择 id 不会是恒定的。我希望它被插入到 p 样式标签中。而且我还需要文本是约翰:测试在一行中。我试过这个但没有工作。谢谢你。

<p style="color:"+fontColor+" > test </p>

演示:http: //jsfiddle.net/kX3EN/

4

3 回答 3

5

试试 - http://jsfiddle.net/kX3EN/7/

$('#colors').change(function(){
    $('p').css( 'color', $(this).val() );
});
于 2012-07-18T19:53:15.397 回答
2

如果您希望您的“John: test”在同一行,您需要:

  • p将(block-level)更改为span(inline)
  • 强制p与 css ( display: inline) 内联。

使用 jQuery,您需要使用该css()函数来更改元素的样式属性。像这样:

$('selector for element you want to change').css('color', $("#your-select-element").val());

您可能会将其放在您的事件处理程序中select

$("select#colors").change(function() {
    $("span.changemycolor").css('color', $(this).val());
    // 'this', in this case, is your select element
});
于 2012-07-18T19:56:39.347 回答
0

通过将标签放在我的 html 代码过滤器之后让它工作。因此,每次我附加一条消息时,都会将其存储为变量,并在将 var 发送到 websocket 发送方法时读取为 JS。谢谢

于 2012-07-19T17:36:21.883 回答