如果下拉列表等于某个值,则更改下拉列表的值

时间:2012-11-09 10:59:01

标签: javascript

很抱歉,如果这个问题已经被问及并得到解答,但我找不到任何专门针对我需求的内容。我有一个包含占位符和javascript的表单,以确保表单不会与占位符一起提交。有一个下拉框,其值为“最佳通话时间”。我想要做的是如果将此值作为默认值传递,我希望它更改为“n / a”或空值。我使用以下javascript在评论框中实现了这一点,但下拉列表似乎没有相同的效果:

var comments=document.getElementById('comments').value;
    if (comments=="Comments")
      {
      document.getElementById('comments').value="";
      }

这不是必填字段,因此我无法提醒,所以如果提交为“最佳通话时间”,我只需要改变价值。希望我已经正确解释了一切

3 个答案:

答案 0 :(得分:1)

您是否选择了值ids?

<select id="hours">
  <option value="default">Best Time To Call</option>
  <option value="six" >6</option>
  <option value="seven">7</option>
</select>

如果是这样,你可以使用它:

var e = document.getElementById("hours");
var value = e.options[e.selectedIndex].value;
if(value == "default")
  e.value ="six";

更新:我已更改行为,将其设置为默认后的第一个选项

答案 1 :(得分:0)

我建议使用HTML5 Placeholder文字;

<textarea id="comments" placeholder="Comments" />

这样您就不需要进行验证来解决自定义占位符。

答案 2 :(得分:0)

对于下拉列表,您需要循环遍历所有“选项”,找到具有该值的那个(在您的情况下为注释)并将属性添加到该“选项” - 已选中。

相反,如果你使用jQuery,使用jQuery(“#comments”)。val(“”)将起作用。