从JQM对话框修改页面
Modifying a page from JQM dialog
我想要实现的是一个在div中有几个按钮的页面。当用户按下其中一个按钮时,会打开一个对话框,询问后续问题。之后,用户返回到同一页面,但带有按钮的div被隐藏。
我尝试过的是以下内容,在JQM页面中,我有一个名为buttons的div,它包含按钮(逻辑上)。这将打开对话框,并调用一个函数,将按下的按钮保存到本地存储中。然后打开对话框,实际将数据发送到服务器。
出于某种原因,当我从对话框返回时,div从未被隐藏。我甚至试图将一个变量保存到sessionStorage中,并在页面加载时隐藏div,但从对话框返回时,页面加载事件似乎不会触发。有什么建议吗?还是我错过了一些基本的东西?
<div class="ui-grid-b" id="buttons">
<div class="ui-block-a"><a href="#Popup" data-rel="dialog" onclick="savePushedButton('green')"></a></div>
<div class="ui-block-b"><a href="#Popup" data-rel="dialog" onclick="savePushedButton('yellow')"></a></div>
<div class="ui-block-c"><a href="#Popup" data-rel="dialog" onclick="savePushedButton('red')"></a></div>
</div><!-- /grid-b -->
// the dialog:
<div data-role="dialog" id="Popup" data-overlay-theme="b" data-theme="a" class="ui-corner-all">
<form>
<div style="padding:10px 20px;">
<h3>Heading</h3>
<textarea name="comments" id="popuptextarea"></textarea>
<button type="submit" data-theme="b" onClick="save()">Selvä</button>
</div>
</form>
</div>
我有两个javascript函数,它们试图保存数据并隐藏div,
function savePushedButton(color) {
//save which button was pressed to local storage
$('#buttons').hide();
console.log("asd");
}
function save() {
//send data to server
}
onclick是您的问题(onchange也是),请不要将其与jQuery Mobile一起使用。在触发onclick之前,jQuery Mobile已经开始转换到对话框。在转换到对话框之前,您需要手动将单击事件绑定到按钮并隐藏按钮。
下面是一个工作示例:http://jsfiddle.net/Gajotres/uhsfs/
$(document).on('pagebeforeshow', '#index', function(){
$(document).on('click', '#test-button', function(){
$('#buttons').hide();
savePushedButton($(this).attr('data-color'));
});
});
function savePushedButton(color) {
console.log(color);
$.mobile.changePage('#Popup', {transition: 'pop', role: 'dialog'});
}
相关文章:
- 着色引导框对话框
- 文本框不是从Javascript/Asp.net中的对话框中打印出来的
- CKeditor:更改对话框中的默认选择选项
- 搜索api在mac上显示对话框
- 使用密码对话框Javascript请求帮助
- CKEditor v4:自制插件中对话框的动态标题
- 删除确认对话框在第一次单击时不起作用
- 使用jquery对话框中的箭头键
- 获取打开jquery对话框的button的id
- 是否可以用JavaScript显示等效的文件夹对话框
- 我怎么能让jQuery对话框表现得像Javascript警报
- 如何在页面重新加载时显示jquery ui对话框
- 打开相对于鼠标位置的CSS3/HTML5模式对话框
- javascript确认对话框有时会不断出现
- 如何为javascript方法放入jquery确认对话框
- 如何修改jquery对话框按钮
- 如何添加/编辑对话框表单的修改内容到调用元素
- 对话框窗口如何修改父窗口中的JS
- 从JQM对话框修改页面
- jQuery 对话框 - 对按钮数组的修改