javascript - Jquery:如何创建具有动态名称的普通对象?
问题描述
我在文档中发现您可以像这样创建一个普通对象:
var y = {
name: "Pete",
age: 15
};
但是,我想为它动态添加名称和值,例如,如果我们有类似的东西:
<input type="text" name="$dynamicName" id="myinput">
我可以创建这样的对象:
var y = {
name: "Pete",
$('#myinput).attr('name'): $('#myinput).val(),
};
但这会引发错误:
语法错误:缺少:属性 id 之后
如何$('#myinput).attr('name')
用作普通对象的名称?
解决方案
我认为这就是您想要做的,它将age
项目添加到数组中,然后将其值设置为 textbox 中的任何内容onclick
。
var y = {
name: "Pete"
};
function go(){
y[$('#myinput').attr("name")] = $('#myinput').val();
console.log(y)
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="text"name="age" id="myinput">
<input type="button" onclick="go(); return false;">
推荐阅读
- python - 如何使用前一个键解析 json 文件?
- android - 如何通过我的 android 应用程序知道 youtube 正在播放什么?
- mysql - 如何在不禁用 ONLY_FULL_GROUP_BY 的情况下获得相同的结果
- icecast - Icecast:在特定时间重现视频
- r - 如何编写一个函数来将字符向量转换为其元素的唯一对的字符向量?
- reactjs - 如何修复在 AWS 上失败的 React 应用程序依赖项?
- image - 从内存中已加载的图像创建图像数据存储
- javafx - 如何使用新窗口让用户输入有关列表中项目的数据?
- c++ - 只能由函数本身写入的函数参数 - 递归计数器
- laravel - 如何修复未知的自定义元素: