很抱歉,如果此类问题已经得到解答。
我想在$("Div").load()
内使用$(document).ready()
添加页面。
页面正在加载但它没有在其变量中显示任何内容。
我的代码中的步骤:
Jquery版本:“2.1.3”
以下是我的代码:
$(document).ready(
if(condition1){
var var1= data //some json data;
$('#divId').load('url/mypage.jsp');
if(condtition == true){
myFunctionToProcessData(var1);
}
}
)
我尝试过ajax调用,但它无效。
完成后,我可以看到我的页面已加载并附加在分区中但未在UI上显示并且具有空变量。
请帮忙。
答案 0 :(得分:0)
感谢您的回复。我无法透露我的完整代码,因此制作了一个片段,以便了解我想要的内容。问题现在已经解决。
问题是:我想在$(document).ready()
内的某些条件下附加一个JSP,但是$(document).ready()
的工作是这样的,它确保执行写入其中的方法和条件。
问题是:
同时调用方法“myFunctionToProcessData
”和“$('#divId').load('url/mypage.jsp');
”,并且在调用方法的同时HTML未完成,由于此原因,我的方法未找到设置值的除法做其他验证。
为了解决这个问题,我使用了以下方法:
执行步骤:
1.代码在一段时间内附加HTML(使用setTimeout函数)
2.执行$(document).ready()中的所有行后,调用ajax函数
3.现在myFunctionToProcessData
找到分区来设置值和在UI上显示的正确输出。
代码:
$(document).ready(
if(condition1){
var var1= data //some json data;
setTimeout(function() {
$('#divId').load('url/mypage.jsp');
}, 10);
if(condtition == true){
$.ajax({
type : "GET",
contentType : "application/json",
data : "&sid=" + Math.random(),
url : "url", // change to full path of file on server
success : function (data) {
myFunctionToProcessData(var1);
});
}
}
)
这只是一种解决方法,以确保myFunctionToProcessData
仅在jsp成功附加到其中后执行。
现在myFunctionToProcessData
正在执行。