Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/68.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 加载新页面后未呈现文本-JQuery Mobile_Javascript_Jquery_Html_Dom_Jquery Mobile - Fatal编程技术网

Javascript 加载新页面后未呈现文本-JQuery Mobile

Javascript 加载新页面后未呈现文本-JQuery Mobile,javascript,jquery,html,dom,jquery-mobile,Javascript,Jquery,Html,Dom,Jquery Mobile,我有一个程序,给出一个SQL语句(使用HTML5-SQL的浏览器数据库),它填充我的jquery移动页面中的一组字段。SQL语句将根据通过url传递的ID进行更改。因此,当单击按钮/链接时,使用不同的参数值调用同一页面:index.html?id=545 虽然第一个页面可以无缝加载,但当我单击指向下一个页面的链接时,会显示对象(页面、按钮、链接、div),但这些对象中的文本不会显示 我正在使用$('div').live('pageshow',函数(事件,ui){事件来触发执行以下操作的事件: $

我有一个程序,给出一个SQL语句(使用HTML5-SQL的浏览器数据库),它填充我的jquery移动页面中的一组字段。SQL语句将根据通过url传递的ID进行更改。因此,当单击按钮/链接时,使用不同的参数值调用同一页面:index.html?id=545

虽然第一个页面可以无缝加载,但当我单击指向下一个页面的链接时,会显示对象(页面、按钮、链接、div),但这些对象中的文本不会显示

我正在使用
$('div').live('pageshow',函数(事件,ui){
事件来触发执行以下操作的事件:

$("#title").text(Title);
$("#date").text(mdate);
当我在Chrome调试器的控制台中打印Title和mdate的值时,它显示了正确的值。我不知道为什么按钮和标签中没有显示相同的文本

有人能帮我吗


感谢使用jQM时需要刷新控件。以下是文档:

刷新表单元素
在jQuery Mobile中,一些增强的表单控件只是简单地设置样式(输入),但其他控件是自定义的 控件(选择、滑块)是从 本机控件。以编程方式使用 JavaScript,首先操作本机控件,然后使用刷新 方法通知增强控件更新自身以匹配新控件 下面是一些如何更新常用表单控件的示例, 然后调用刷新方法:

复选框:

$("input[type='checkbox']").prop("checked",true).checkboxradio("refresh");
$("input[type='radio']").prop("checked",true).checkboxradio("refresh");
var myselect = $("#selectfoo");
myselect[0].selectedIndex = 3;
myselect.selectmenu("refresh");
$("input[type='range']").val(60).slider("refresh");
var myswitch = $("#selectbar");
myswitch[0].selectedIndex = 1;
myswitch.slider("refresh");
收音机:

$("input[type='checkbox']").prop("checked",true).checkboxradio("refresh");
$("input[type='radio']").prop("checked",true).checkboxradio("refresh");
var myselect = $("#selectfoo");
myselect[0].selectedIndex = 3;
myselect.selectmenu("refresh");
$("input[type='range']").val(60).slider("refresh");
var myswitch = $("#selectbar");
myswitch[0].selectedIndex = 1;
myswitch.slider("refresh");
选择:

$("input[type='checkbox']").prop("checked",true).checkboxradio("refresh");
$("input[type='radio']").prop("checked",true).checkboxradio("refresh");
var myselect = $("#selectfoo");
myselect[0].selectedIndex = 3;
myselect.selectmenu("refresh");
$("input[type='range']").val(60).slider("refresh");
var myswitch = $("#selectbar");
myswitch[0].selectedIndex = 1;
myswitch.slider("refresh");
滑块:

$("input[type='checkbox']").prop("checked",true).checkboxradio("refresh");
$("input[type='radio']").prop("checked",true).checkboxradio("refresh");
var myselect = $("#selectfoo");
myselect[0].selectedIndex = 3;
myselect.selectmenu("refresh");
$("input[type='range']").val(60).slider("refresh");
var myswitch = $("#selectbar");
myswitch[0].selectedIndex = 1;
myswitch.slider("refresh");
翻转开关(使用滑块):

$("input[type='checkbox']").prop("checked",true).checkboxradio("refresh");
$("input[type='radio']").prop("checked",true).checkboxradio("refresh");
var myselect = $("#selectfoo");
myselect[0].selectedIndex = 3;
myselect.selectmenu("refresh");
$("input[type='range']").val(60).slider("refresh");
var myswitch = $("#selectbar");
myswitch[0].selectedIndex = 1;
myswitch.slider("refresh");
如果这是您需要的页面,请尝试以下操作:

增强新标记
页面插件发送pagecreate事件,大多数小部件使用该事件自动初始化自己。只要 当小部件插件脚本被引用时,它将自动增强 它在页面上找到的小部件的任何实例

但是,如果在客户端生成新标记或通过 Ajax并将其注入页面中,您可以触发create事件 处理中包含的所有插件的自动初始化 新标记。这可以在任何元素(甚至页面)上触发 div本身),省去了手动初始化每个插件的任务 (列表视图按钮、选择等)

例如,如果加载了一块HTML标记(比如登录表单) 在中,通过Ajax触发create事件以自动转换 它包含的所有小部件(在本例中为输入和按钮)都将 增强版本。此场景的代码为:


嗨,Phill,谢谢你的回答。我没有任何特殊的刷新控件。我只使用h4标记和链接/按钮。问题是没有渲染图形。所有设计方面的对象都显示得非常完美。我尝试了“$”(“#pagename”)。page('refresh')、$('#pagename')。listview('refresh')和$('div')。listview('refresh'))'但是在加载新页面后,它们都不起作用。还有其他建议吗?我的页面太大,无法发布整个内容。我已经生成了一个JSFIDLE,其中包含负责生成数据库、检索和打印文本到屏幕的代码。感谢您的帮助!我已经用正确版本的jQuery更新了FIDLE,并添加了管理资源中的jQM CSS和JS。另外,jQM不使用document.ready这里是更新的,因为我无法连接html5sql(数据库)调试仍然是一个挑战。您能再添加一点吗?我使用document.ready,因为我只希望在页面的第一次加载时执行它。正如我前面提到的,这不是完整的页面。这只是我用于javascript的代码。我稍后会添加更多内容。我已经用大部分内容更新了JSFIDLE我正在使用的只是在结果窗口中显示帧。