如果其他是,则将表单字段的值设置为空白

时间:2012-09-18 17:42:25

标签: javascript

我环顾四周,找不到这样的东西。我有一个持有约会的字段。旁边是一个持有小时数的人。

我需要javascript来点击,评估日期字段,如果是空白,则自动将文本框的值空白到它的左边。

我的表单的部分代码如下所示:

  <td>Day One:</td>
    <td width="250"> <input type=date name="dayone" onClick="document.getElementsByName('hours1')[0].value=8;" /></td>
    <td>Hours: (max 8) <input type="text" name="hours1" id="hours1" class="smalltext" ></td>

onclick只是填充文本字段,默认为“8”。因此,如果有人改变主意并从其他形式字段中清除日期,我几乎需要一些能够撤消的内容。

感谢您的帮助!

3 个答案:

答案 0 :(得分:3)

您最好保持HTML清洁并使用eventListener - s - DEMO

HTML

<td width="250">
    <input type=date name="dayone" />
</td>
<td>
    Hours: (max 8)
    <input type="text" name="hours1" id="hours1" class="smalltext" />
</td>

JS

document.getElementsByName('dayone')[0].addEventListener("click", function() {
    document.getElementsByName('hours1')[0].value = 8;
}, false);

document.getElementsByName('hours1')[0].addEventListener("keyup", function() {
    if ( this.value == '' ) {
        document.getElementsByName('dayone')[0].value = '';
    }
}, false);

答案 1 :(得分:2)

试试这个

<script>
   function clearinput(){
      var el = document.getElementById('hours1');
     el.value = '';
}
</script>

见工作fiddle

答案 2 :(得分:1)

更改代码以添加onblur事件处理程序

   <td width="250"> <input type=date name="dayone" onblur="checkValue" onClick="document.getElementsByName('hours1')[0].value=8;" /></td>

并编写像

这样的处理程序
function checkValue()
{
    var dayValue = document.getElementByName('dayone')[0].value;
    if(dayValue != '')
    {
       document.getElementByName('hours1')[0].value = '';    
    }
}