javascript - 如何在 Javascript 中以相同的方式获取文本框、文本区域和 radio 的值?

标签 javascript html dhtml

我想要一个函数/代码,它将返回用户提交给其名称/ID 传递给它的字段的值。字段是文本框、文本区域、单选还是选择都无关紧要。例如,该字段可以是:

<input type='radio' name='a_21' value='test' id='a_21_0' />
<input type='radio' name='a_21' value='test2' id='a_21_1' />

或者

<textarea name="a_21" rows="30" cols="6"></textarea>

当我打电话时:

function getVal('a_21');

它应该返回选定的值。

我该怎么做?将:

document.myForm.field.value

也适用于文本区域、下拉菜单和 radio 吗?

最佳答案

问题是不同的小部件有不同的用途。例如,<select>具有多个可用选择的框、多个复选框,甚至单个复选框(其值只是“开”或“关”)不会有单个值,因此它们的行为与其他小部件不同是可以的。

但是如果你想拥有一个单一的功能,你可以这样做:

function getVal(obj){
  if(obj.value){
    return obj.value;
  }

  if(obj.selectedIndex){
    return obj.options[obj.selectedIndex];
  }

  if(obj.checked){
    return obj.checked;
  }

 return null;
}

关于javascript - 如何在 Javascript 中以相同的方式获取文本框、文本区域和 radio 的值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/791544/

相关文章:

javascript - 从表输入中获取总计作为 jquery 中的总计

javascript - 如何在函数内部定义全局变量?

javascript - 奇怪的 IONIC 错误消息

html - Chrome 填充错误

javascript - 在不重新加载页面的情况下修改查询字符串

javascript - JavaScript 中的球面距离

css - 如何使页脚停留在网页的底部?

php - 以不同方式设置 PHP echo 输出的样式

javascript - 寻找实现 AJAX TreeGrid 的最佳解决方案

javascript - 动态获取 <table> 元素的第 n 个 <td> innerHTML