5

我想在单击按钮时将标签的颜色更改为红色

但是代码不起作用一切似乎都是正确的

    <html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>
    </title>
    <script type="text/javascript">
    function changeColor(id, newColor) {

var labelObject = document.getElementById(id);

$("#" + id).css("color", newColor);

}
    </script>
</head><body>
<form id="frm2">

<label for="model">Male</label>

<input type="text" name="cars" id="model" />

<br />

<label for="female">Female</label>

<input type="text" name="cars" id="color" />

</form>

<input type="button" value="Change Label Color" onclick="return changeColor('label', 'red')" />

    </body>
</html>

请帮忙

4

3 回答 3

11

您将“标签”作为changeColor处理程序的 id 参数传递,但在您提供的 HTML 中没有具有该 ID 的元素。您需要在标签中添加一些 ID 并将其传递到 onclick 处理程序中。例如:

<label for="model" id="label1">Male</label>
<input type="text" name="cars" id="model" />

<input type="button" value="Change Label Color" onclick="return changeColor('label1', 'red')" />

另一种方法是传递输入元素的 ID,因为它们已经分配了 ID。然后,您需要changeColor按如下方式修改您的处理程序:

function changeColor(inputId, newColor) {
  $("#" + inputId).prev().css("color", newColor);
}

编辑:这是一个jsFiddle演示我的第二个示例。

于 2012-08-04T14:47:39.223 回答
6
$('input[type="button"]').click(function(){
     changeColor('labelCity' , 'red');
}); 

function changeColor(id, newColor) {

   $("#" + id).css("color", newColor);

}  
于 2012-08-04T14:34:18.787 回答
2

这是一个使用 jQuery 将标签文本的颜色更改为红色的简单示例。

    <script src="Scripts/jquery-1.9.0.min.js"></script>
    <script>

        $(document).ready(function () {
            $('#btnChangeColor').click(function () {
                $('#lbl1').css("color", "red");
            })
        })

        
    </script>
<body>
    <form id="form1" runat="server">

        <label id="lbl1" >Hello friends save girl child</label>
        <br /><br /><br />

        <input type="button" id="btnChangeColor" value="Change Color" />

    </form>
</body>

于 2015-10-19T18:44:51.320 回答