javascript - 从其属性名称中获取标签名称

标签 javascript jquery forms

我有一个这样的数组:

["school_name":"My School Name", "school_number":"54546", "note":"", "class":1]

和这样的 HTML:

<input type="text" name="school_name" />
<input type="text" name="school_number" />
<textarea name="note" ></textarea>
<select name="class">
    <option value="1"> One </option>
    <option value="2"> Two </option>
    <option value="3"> Three </option>
</select>

我想从标签的属性名称中获取标签的名称:

$('*[name=school_name]').attr("tag"); // this is input
$('*[name=class]').attr("tag"); // this is select
$('*[name=note]').attr("tag"); // this is textarea

请注意我试过这个:

$('*[name=school_name]').attr("tag");
$('*[name=school_name]').prop("tag");
$('*[name=school_name]').get(0).tagName;
$('*[name=school_name]')[0].tagName;

这就是我想要做的:

如果标签名称是输入文本,

$("input[name=school_name]").attr("value", "My School Name");

如果标签名称是一个选择框,

$("select[name=class]").children("option[value=2]").attr("selected", "selected");

最佳答案

var schoolProperties = {
    "school_name": "My School Name",
    "school_number": "54546",
    "note": "",
    "class": 1
};
for (var property in schoolProperties) {
    $('*[name=' + property + ']').attr('value', schoolProperties[property]);
}

这在 fiddle 中得到了证明.

关于javascript - 从其属性名称中获取标签名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10923821/

相关文章:

javascript - 使用 tab 键选择一个 div 并在 enter 键上添加事件

javascript - django ajax多表单提交

javascript - 如何在Android上转换手机网页?

javascript - 单击按钮时链接到另一个 html 文档

javascript - 在 JavaScript 中,字符串化数字在减去它们之前是否应该转换为整数? (最佳实践)

javascript - 无法让 JavaScript 密码正则表达式验证生效

javascript - 使用 Reactjs 进行表单的优点?

javascript - 为什么 BrowserRouter 和 Route from 'react-router-dom' 无法正常工作?

javascript - 根据是否包含某些元素来隐藏 div

javascript - 使用 JsPdf AutoTable 在 'd' 和其他字符上设置换行符时出现问题