无法在同一页面上显示多个jPicker颜色选择器

时间:2012-06-11 23:51:24

标签: jquery jquery-plugins color-picker jpicker

我很难在同一网页上显示相同类型的多个jPicker实例。这是一些示例代码:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <script type="text/javascript" src="js/jquery-1.7.2.min.js"></script>
    <script type="text/javascript" src="js/jpicker-1.1.6/jpicker-1.1.6.min.js"></script>
    <link href="js/jpicker-1.1.6/css/jPicker-1.1.6.min.css" rel="stylesheet" type="text/css" />
</head>
<body>
    <div id="testArea">
        <script type="text/javascript">            
            $(document).ready(function() {
                $('#Expandable').jPicker( {
                    window: {
                        expandable: true,
                        alphaSupport: true,
                        position: {
                            x: '40px',
                            y: '0px'
                        }
                    },
                    images: {
                        clientPath: "js/jpicker-1.1.6/images/"
                    }
               });
            });
        </script>

        <div id="colorSelectors">
            <input type="checkbox" value="Hamburgers" checked="yes" /> Hamburgers
                <span id="Expandable"></span> <br />
            <input type="checkbox" value="Hot Dogs" checked="yes" /> Hot Dogs
                <span id="Expandable"></span> <br />
        </div>
    </div>
</body>
</html>

这是我得到的:

My Sample Web Page

对我来说奇怪的是,如果我使用不同类型的jPicker,我可以在同一页面上有多个实例,但每种类型只有一个实例。例如,我可以在同一页面上使用“可扩展”选择器和“内联”选择器,但我不能在同一页面上使用2个“内联”选取器。

一个例外是,当jPickers绑定到<input>元素时,我可以让多个实例工作,就像example on the jPicker website一样。但我不能为任何其他类型的拣货员工作。

1 个答案:

答案 0 :(得分:3)

可能因为有重复的ID,请尝试使用类

$('.Expandable').jPicker( {
...
    <div id="colorSelectors">
        <input type="checkbox" value="Hamburgers" checked="yes" /> Hamburgers
            <span class="Expandable"></span> <br />
        <input type="checkbox" value="Hot Dogs" checked="yes" /> Hot Dogs
            <span class="Expandable"></span> <br />
    </div>