如何从选择菜单选项动态声明全局变量
How to dynamically declare global variables from selectmenu options?
我是一个编程菜鸟。 我有一个选择菜单,其中有两个按钮,允许用户在菜单中添加和删除选项。 我想将选择菜单中的每个选项分配给对象类型的变量,但不幸的是,我不知道用户将预先向选择菜单添加多少选项。 有没有办法在用户每次向选择菜单添加新选项时动态声明一个新的全局变量?
请参阅下面的选择菜单的 html 代码。
<select id="List">
<option value="volvo">Volvo</option>
<option value="saab">Saab</option>
</select>
请参阅下面的jquery代码以向选择菜单添加一个选项。
$(".bt1").click(function () {
var opt = $("#ip1").val();
$('#List')
.append($("<option></option>")
.attr("value", opt)
.text(opt));
如果您是初学者,我的第一个建议是不惜一切代价避免全局变量(无论编程语言如何)。在这篇文章中,您可以找到许多如何避免在 js 中使用它们的方法。
回到您的问题,您可以在每次用户添加按钮时用一个新对象扩展包含按钮的对象,并在删除按钮后将其删除。或者你可以使用数组来存储按钮(对象和数组在js中几乎相同)。有很多方法。但是尝试将变量包装在函数中,并避免不惜一切代价聚类全局空间。
HTML
<select id="List">
<option value="select">Select</option>
<option value="volvo">Volvo</option>
<option value="saab">Saab</option>
<option value="new">new</option>
<option value="old">old</option>
</select>
<input type="button" id="delete"
value="delete" />
<br />
<input type='text' id="readme" /><input id="add" type="button" value="add" /><br />
简讯
$('#add').on('click',function(){
$("#List").append('<option>'+$('#readme').val()+'</option>');
});
$('#delete').on('click',function(){
$("#List option:selected").remove();
});
下面的演示网址
http://jsfiddle.net/bxsnevzs/
相关文章:
- 无法从 jQuery RSS Feed 中的 localStorage 动态替换类
- 如何声明要在onClick事件中使用的动态TypeScript对象名称
- 在jquery中声明基于动态变量的动态数组
- 如何在 template.find(input:hidden[id='SOME VARIABLE']) 声明中使用动态
- 如何从选择菜单选项动态声明全局变量
- 在方法中动态声明新的“类字段” - 是否是好的做法
- 动态编辑html声明javascript
- 在jQuery中动态声明函数
- Javascript:动态声明函数的正确方法
- Javascript中的动态键关联数组声明为一行
- 来自动态数据的JavaScript字符串声明,带有未加引号
- 在Rhino JS上下文中动态声明函数
- 在Javascript中动态声明方法
- 在javascript中动态声明变量名
- 在组件中声明动态数据
- 在javascript中声明动态knockout可观察对象
- 如何在 JavaScript 中声明和使用动态变量
- 在javascript中使用动态变量声明数组
- 如何在javascript中声明动态变量
- 以Dojo声明的方式插入动态PHP