jQuery's clone()函数扰乱了原始元素'的属性

jQuery's clone() function messes up original element's property

本文关键字:原始 乱了 元素 属性 clone jQuery 函数      更新时间:2023-09-26

我有一个看似简单的问题。我先检查一个单选按钮,然后克隆它。原来的单选按钮未选中,克隆的按钮是正确的。有人能告诉我为什么原来的单选按钮没有被选中吗?

提前感谢!

<!DOCTYPE HTML>
<html>
<head>
    <script src="jquery.js"></script>
</head>
<body>
    <div id="ClonedDiv" style="display:none"></div>
    <div id="RadioDiv">
        <input id="high"   type="radio" name="severity" value="High"/>
        <input id="medium" type="radio" name="severity" value="Medium"/>
        <input id="low"    type="radio" name="severity" value="Low"/>
    </div>
    <script>
            $("#RadioDiv #high").prop("checked", true);
            alert("RadioDiv's High is: " + ($("#RadioDiv #high")[0].checked ? "CHECKED." : "NOT CHECKED!") );
            $("#ClonedDiv").empty();
            $("#RadioDiv>input").clone().appendTo("#ClonedDiv"); // I'm merely cloning RadioDiv's inputs into ClonedDiv...
            alert("RadioDiv's High is: " + ($("#RadioDiv #high")[0].checked ? "CHECKED." : "NOT CHECKED!") );
            alert("ClonedDiv's High is: " + ($("#ClonedDiv #high")[0].checked ? "CHECKED." : "NOT CHECKED!") );
    </script>
</body>
</html>

一个组中只能选中一个单选按钮。选中一个取消选中所有其他。单选按钮的分组由它们都具有相同的名称属性来确定。将它们克隆到隐藏的div中,然后选中其中一个取消选中另一个。