使用 jQuery 手机和 ajax
using jQuery mobile with ajax
我正在尝试使用 ajax 打印一个 jQuery 移动设备,但它没有像 jQuery 移动设备应该做的那样对结果进行编码。
这是应该这样做的 javascript 代码部分的简化版本:
<script type="text/javascript">
function changePage(task) {
var objText = "";
$.ajax({
type: "POST",
url: "DataFetch.aspx/FetchData",
data: '{id: ' + <%=Session["loggedID"] %> + ', task: ' + task + ' }',
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (response) {
var obj = JSON.parse(response.d);
if (task == 2)
{
objText += "<div data-role='collapsible'><h3>click me</h3><p>text</p></div>";
}
document.getElementById('content' + task).innerHTML = objText;
}
});
}
</script>
我怎样才能让它发挥作用? (当我在 html 或 ajax 函数之外显式编写它时,它可以工作,但我需要它与 json 一起工作)
尝试更改
document.getElementById('content' + task).innerHTML = objText;
至
$('#content' + task).HTML(objText).enhanceWithin();
enhanceWithin() 调用告诉 jQM 增强您通过 AJAX 添加的新内容:
http://api.jquerymobile.com/enhanceWithin/
我正在尝试使用 ajax 打印一个 jQuery 移动设备,但它没有像 jQuery 移动设备应该做的那样对结果进行编码。
这是应该这样做的 javascript 代码部分的简化版本:
<script type="text/javascript">
function changePage(task) {
var objText = "";
$.ajax({
type: "POST",
url: "DataFetch.aspx/FetchData",
data: '{id: ' + <%=Session["loggedID"] %> + ', task: ' + task + ' }',
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (response) {
var obj = JSON.parse(response.d);
if (task == 2)
{
objText += "<div data-role='collapsible'><h3>click me</h3><p>text</p></div>";
}
document.getElementById('content' + task).innerHTML = objText;
}
});
}
</script>
我怎样才能让它发挥作用? (当我在 html 或 ajax 函数之外显式编写它时,它可以工作,但我需要它与 json 一起工作)
尝试更改
document.getElementById('content' + task).innerHTML = objText;
至
$('#content' + task).HTML(objText).enhanceWithin();
enhanceWithin() 调用告诉 jQM 增强您通过 AJAX 添加的新内容: http://api.jquerymobile.com/enhanceWithin/