2012-06-29 152 views
0

是否有可能在JavaScript中打开Jquery Mobile中的对话框?从javascript打开jquery移动对话框?

我试图做这样的事情,但它没有工作:

<a id='lnkDialog' href="goals.html" data-rel="dialog" data-transition="pop" style='display:none;'></a> 

,然后在JS

 document.getElementById('lnkDialog').click(); 

任何帮助,将不胜感激

回答

1

我们将需要更多的信息,但除非#lnkDialog已经具有绑定到单击事件的功能,否则不起作用。我假设data-rel包含将弹出的模式的ID。

它会更喜欢

$('#lnkDialog').on({ 
    click: 
     function() { 
      var selector = '#' + $(this).attr('data-rel'); 
      $(selector).show(); 
     } 
}); 

但同样,需要大量的详细信息。

1

这就是我所做的。

在我的标记,我有体内定义的对话,朝着它的结束如下:

<div data-role="dialog" id="messagebox"> 
    <div data-role="header"> 
     <h1>Message</h1> 
    </div><!-- /header --> 

    <div data-role="content"> 
     <span id="phMessage"></span> 
    </div> 
</div> 

然后在JavaScript我:

function showMessage(message) { 
    $("#phMessage").html(message); 
    $.mobile.changePage('#messagebox', 'pop', false, true); 
} 

你真正需要的仅仅是$.mobile.changePage('#messagebox', 'pop', false, true);

+1

奇怪的是,没有为我工作。当我调用该函数时什么也没有发生 – evenodd

+0

你可以创建一个jsfiddle并显示我们吗?确保对话框div的数据角色等于“对话框” – Dimitri