1

这是一个文本框:

<asp:TextBox ID="UsernameTextBox" runat="server" class="BlockInput"></asp:TextBox>

我想给asptextbox一些颜色,但它不会改变颜色

 <script type="text/javascript">
     function BlockInput() {
         var elements = document.getElementsByClassName("BlockInput");
         for (var i = 0; i < elements.length; i++) {
             elements[i].readOnly = true; // works
             elements[i].style.color = "#000000";// does not work!
         }
     }
     window.onload = BlockInput;
</script>

当我查看源代码时,我可以看到正在添加的样式:

<input name="ctl00$MainContent$UsernameTextBox" 
       type="text" id="MainContent_UsernameTextBox"
       class="BlockInput" readonly="" style="color: rgb(0, 0, 0);">

我还确保没有任何东西覆盖css。

4

3 回答 3

3

改变

elements[i].style.color = "#000000";

elements[i].style.backgroundColor= "#000000";

希望这会帮助你。

<script type="text/javascript">
     function BlockInput() {
var elements=document.getElementsByTagName('input');
         for (var i = 0; i < elements.length; i++) {
             elements[i].readOnly = true; // works
             elements[i].style.backgroundColor= "#000000";
         }
     }
     window.onload = BlockInput;
</script>
于 2013-09-30T14:36:52.663 回答
1

变量elements未定义。你想做类似的东西吗?:

function BlockInput() {
         var elements = document.getElementsByTagName('input');
         for (var i = 0; i < elements.length; i++) {
             elements[i].readOnly = true; // works
             elements[i].style.color = "#000000";// does not work!
         }
     }

小提琴

于 2013-09-30T14:32:01.270 回答
0

使用颜色样式,您将文本颜色设置为黑色。如果要更改 textarea 的背景颜色,请尝试以下操作:

elements[i].style.backgroundColor = "#000000";
于 2013-09-30T14:34:00.650 回答