如何手动触发jPicker对话框?

时间:2013-12-17 08:43:23

标签: javascript jquery jpicker

我有三个绑定到隐藏输入的jPicker。他们工作正常 我的问题是,我想通过点击其他地方的div<a>设置来打开对话框。
我无法弄清楚如何实现这一结果 我尝试使用$('#myElement').jPicker()$('#myElement').jPicker("show")$('#myElement').jPicker().show()但到目前为止没有任何效果 我知道我做错了,我认为必须有一种方法可以从不同的锚点调用相同的对话框 我还需要它在不同的情况下工作,例如,当动画完成时作为回调。 任何人都可以帮助我吗? 提前谢谢。

以下是我设置jPicker对话框的代码:

$(document).ready(
    $('#c_d_item_color1').jPicker(
    {
        window:{position:{x:'screenCenter',y:'screenCenter'}}
    },
    function(color, context) {
        var all = color.val('all');
        var temp = 'nocolor';
        if (all !== null) {
            temp = '#' + all.hex;
        }
        worker_changeColorByJPicker(temp, 1);
     }            
     )
 );

因此jPicker设置在#c_d_item_color1上,我需要此对话框由其他事件触发,如确认,回调或其他锚点。

这是绑定jPicker的当前输入:

<input class="cf-jpicker" type="hidden" id="c_d_item_color1" value="" />

2 个答案:

答案 0 :(得分:0)

修改

尝试使用document.ready(function()

$(document).ready(function(){
    $('#myElement').jPicker("show");//I think it would work without the "show" parameter
});

要将其附加到点击事件上,请尝试

$("#my_div").click(function(){
    $(this).jPicker("show");
})

答案 1 :(得分:0)

$("#MyElement")
  .button()
  .click(function() {
    $( "#Jpicker_ID" ).jPicker("open");
  });