在javascript中动态更改控制名称

时间:2009-07-31 04:49:04

标签: javascript

我有一些问题

即我在asp页面中有一个60个文本框控件我希望文本框文本为空,所以,我使用如下所示

var st = document.getElementById("<%=hiddenrate.ClientID%>").value;//Total Control names

var controlnames = st.split(','); //split with comma 

var i = 0;
for (i = 0; i <= controlnames.length; i++)
{
    var gh = '' + '.SetText(' + "'Empty text'" + '' + ');';

    ft[i] + gh;

    //example rate1.SetText('');

    rate2.SetText('');
    '
    '
    rate60..SetText('');
}

但在javascript中是控件名称和属性

如何动态地在总控件中将文本设置为空?

感谢你,

拉​​杰什

4 个答案:

答案 0 :(得分:2)

如果要清除所有文本输入的值,请使用以下代码:

// get all <input> elements
var inputs = document.getElementsByTagName('input');

for (var i = 0; i < inputs.length; i++) {
    // check input type
    if (inputs[i].type === 'text') {
        inputs[i].text = '';
    }
}

您可以轻松修改该代码以处理textareas或为元素添加更多过滤。

如果考虑使用JS框架,可以使代码更短。例如,如果您使用jQuery,那么这里是您的代码:

$(document).ready(function () {
    $('input:text').text('');
});

答案 1 :(得分:1)

以下是另一个清除所有文本框值的示例:

<script type="text/javascript">
   function pp(){
          for(p in form1.childNodes) {
              if(form1.childNodes(p).type=="text")
                  form1.childNodes(p).value="";
          }
    }
</script>

<body>
  <form name="form1">
      <input type="text" name="a1"/>
      <input type="text" name="a2"/>
      <input type="text" name="a3"/>
      <input type="button" name="a11"/>
      <input type="submit" name="a12"/>
      <input type="button" value="Clear" onclick="pp()" name="a13"/>

   </form>
</body>

答案 2 :(得分:0)

如何在Javascript中简单地调用document.forms["form1"].reset()?它将清除表单中所有控件的值。

答案 3 :(得分:0)

感谢你所有我得到了如下方法的解决方案                 var i = 0;                 for(i = 0; i&lt; = ft.length; i ++){

               x = new Object();
               x = ft[i];
               propertyName = ".SetText";
               propertyValue = " ";
               if(x !="undefined")
               eval(''+x+'' + propertyName + "('" + propertyValue + "');");
               or

              eval(x).SetText('');
            }
总而言之。