none
有十个textbox,如果textbox.value==“您尚未填写反馈” 那么textbox.value="" 并且textbox.style.backgroud-color=red,请问如何做。 RRS feed

  • 问题

  •         window.onload = function() {
                for (var i = 1; i <= 10; i++) {
                    if (document.getElementById("ctl00$main$dv_Schy$txt_Fk" + i).value == "您尚未填写反馈") {
                        document.getElementById("ctl00$main$dv_Schy$txt_Fk" + i).onclick = function(evt) {
                            ele = evt ? evt.target : window.event.srcElement
                            document.getElementById(ele.id).value = "";
                            document.getElementById(ele.id).style.background-color="Red";
                        }
                    }
                }
            }


    1、以上代码中即使有以下语句,但是当textbox.value!="您尚未填写反馈"时,还是会清空textbox
    if (document.getElementById("ctl00$main$dv_Schy$txt_Fk" + i).value == "您尚未填写反馈")

    2、document.getElementById(ele.id).style.background-color="Red";无效

     

    2009年5月5日 15:18

答案

  • <%@ Page Language="C#" AutoEventWireup="true" CodeFile="X200905052340.aspx.cs" Inherits="HTML_CSS_JAVASCRIPT_X200905052340" %>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head runat="server">
        <title></title>
        <script type="text/javascript">
            window.onload = function() {
                for (var i = 1; i <= 10; i++) {
                    if (document.getElementById("ctl00$main$dv_Schy$txt_Fk" + i).value != "您尚未填写反馈") {
                        document.getElementById("ctl00$main$dv_Schy$txt_Fk" + i).onclick = function(evt) {
                            ele = evt ? evt.target : window.event.srcElement;
                            document.getElementById(ele.id).value = "";
                            document.getElementById(ele.id).style.backgroundColor="Red";
                        }
                    }
                }
            }
        </script>
    </head>
    <body>
        <form id="form1" runat="server">
        <div>
            <input type="text" id="ctl00$main$dv_Schy$txt_Fk1" value="" /><br />
            <input type="text" id="ctl00$main$dv_Schy$txt_Fk2" value="您尚未填写反馈" /><br />
            <input type="text" id="ctl00$main$dv_Schy$txt_Fk3" value="" /><br />
            <input type="text" id="ctl00$main$dv_Schy$txt_Fk4" value="您尚未填写反馈" /><br />
            <input type="text" id="ctl00$main$dv_Schy$txt_Fk5" value="" /><br />
            <input type="text" id="ctl00$main$dv_Schy$txt_Fk6" value="" /><br />
            <input type="text" id="ctl00$main$dv_Schy$txt_Fk7" value="" /><br />
            <input type="text" id="ctl00$main$dv_Schy$txt_Fk8" value="您尚未填写反馈" /><br />
            <input type="text" id="ctl00$main$dv_Schy$txt_Fk9" value="" /><br />
            <input type="text" id="ctl00$main$dv_Schy$txt_Fk10" value="" /><br />
        </div>
        </form>
    </body>
    </html>
    
    

    知识改变命运,奋斗成就人生!
    • 已标记为答案 杜宏宇 2009年5月5日 16:02
    2009年5月5日 15:52
    版主
  • 感觉你的逻辑有点问题,你是不是想表达下面的意思
    <script type="text/javascript">
        window.onload = function() {
            for (var i = 1; i <= 10; i++) {
                document.getElementById("ctl00$main$dv_Schy$txt_Fk" + i).onclick = function(evt) {
                    ele = evt ? evt.target : window.event.srcElement;
                    if (document.getElementById(ele.id).value == "您尚未填写反馈") {
                        document.getElementById(ele.id).value = "";
                        document.getElementById(ele.id).style.backgroundColor = "Red";
                    }
                }
            }
        }
    </script>


    知识改变命运,奋斗成就人生!
    • 已标记为答案 杜宏宇 2009年5月5日 16:02
    2009年5月5日 15:57
    版主

全部回复

  • <%@ Page Language="C#" AutoEventWireup="true" CodeFile="X200905052340.aspx.cs" Inherits="HTML_CSS_JAVASCRIPT_X200905052340" %>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head runat="server">
        <title></title>
        <script type="text/javascript">
            window.onload = function() {
                for (var i = 1; i <= 10; i++) {
                    if (document.getElementById("ctl00$main$dv_Schy$txt_Fk" + i).value != "您尚未填写反馈") {
                        document.getElementById("ctl00$main$dv_Schy$txt_Fk" + i).onclick = function(evt) {
                            ele = evt ? evt.target : window.event.srcElement;
                            document.getElementById(ele.id).value = "";
                            document.getElementById(ele.id).style.backgroundColor="Red";
                        }
                    }
                }
            }
        </script>
    </head>
    <body>
        <form id="form1" runat="server">
        <div>
            <input type="text" id="ctl00$main$dv_Schy$txt_Fk1" value="" /><br />
            <input type="text" id="ctl00$main$dv_Schy$txt_Fk2" value="您尚未填写反馈" /><br />
            <input type="text" id="ctl00$main$dv_Schy$txt_Fk3" value="" /><br />
            <input type="text" id="ctl00$main$dv_Schy$txt_Fk4" value="您尚未填写反馈" /><br />
            <input type="text" id="ctl00$main$dv_Schy$txt_Fk5" value="" /><br />
            <input type="text" id="ctl00$main$dv_Schy$txt_Fk6" value="" /><br />
            <input type="text" id="ctl00$main$dv_Schy$txt_Fk7" value="" /><br />
            <input type="text" id="ctl00$main$dv_Schy$txt_Fk8" value="您尚未填写反馈" /><br />
            <input type="text" id="ctl00$main$dv_Schy$txt_Fk9" value="" /><br />
            <input type="text" id="ctl00$main$dv_Schy$txt_Fk10" value="" /><br />
        </div>
        </form>
    </body>
    </html>
    
    

    知识改变命运,奋斗成就人生!
    • 已标记为答案 杜宏宇 2009年5月5日 16:02
    2009年5月5日 15:52
    版主
  • 感觉你的逻辑有点问题,你是不是想表达下面的意思
    <script type="text/javascript">
        window.onload = function() {
            for (var i = 1; i <= 10; i++) {
                document.getElementById("ctl00$main$dv_Schy$txt_Fk" + i).onclick = function(evt) {
                    ele = evt ? evt.target : window.event.srcElement;
                    if (document.getElementById(ele.id).value == "您尚未填写反馈") {
                        document.getElementById(ele.id).value = "";
                        document.getElementById(ele.id).style.backgroundColor = "Red";
                    }
                }
            }
        }
    </script>


    知识改变命运,奋斗成就人生!
    • 已标记为答案 杜宏宇 2009年5月5日 16:02
    2009年5月5日 15:57
    版主