我们可以克隆一个下拉选项,并在将其存储在同一下拉列表后以不同方式命名吗?
就像我在克隆后从下拉列表中选择了一个选项(例如Apple),我需要将其存储为Apple_copy。
<SELECT NAME="list" ID="list">
<OPTION>Apple</OPTION>
</SELECT>
<FORM NAME="myform" ACTION="" METHOD="GET">
<INPUT TYPE="button" NAME="button" VALUE="Copy" onClick="CopyItem1()"/>
JS
function CopyItem1() {
$('#list1').append(function(){
return $(this).find(':selected').clone(); //return the clone of selected option to be appended.
});
}
答案 0 :(得分:1)
您只能创建克隆并将其附加到选择
function CopyItem1() {
var $list = $('#list');
var clone = $list.find('option:selected').clone();
$list.append(clone);
}
瞧!
答案 1 :(得分:0)
我同意parchambault,只记得OP需要重命名选项:
var $list = $('#list');
var clone = $list.find('option:selected').clone();
var name = clone.html() + "_copy";
clone.attr("name", name);
clone.html(name);
$list.append(clone);
答案 2 :(得分:0)
试试这个
function CopyItem1()
{
var $list=$("#list");
$list.append($list.find(':selected').clone().attr("name","newName").text("Apple_copy")); //return the clone of selected option to be appended.
}
这里我将名称设置为“newName”,文本正在更改为“Apple_copy”
您可以查看小提琴here
编辑:
发表评论后
function CopyItem1()
{
var $list=$("#list");
var $clone=$list.find(":selected").clone();
var text=$clone.text();
$list.append($clone.attr("name","newName").text(text +"_copy"));
}
如果您复制任何选定的项目
,现在这将附加“_copy”小提琴here