在我的项目中,我使用ajax将html内容提取到cenDiv div。
我的ajax代码是:
$.ajax({
dataType: 'html',
type: "POST",
url: "oat.php",
data: {
standby: standby
},
success: function(data) {
$("#cenDiv").html(data);
$.parser.parse($('#corWSId').parent());
}
});
我的oat.php代码是:
if(isset($_POST['inAppInit']))
{
echo '
........
<div style="display:none" id="attFId">...</div>
<div style="display:block" id="attNId">...</div>
........
';
}
现在,我想更改两者的显示。我的js功能是:
function storFirDoc() {
var docTV = $('#docTitle').val();
if (docTV == "") {
alert("not none");
exit;
} else {
alert('test'); //works Ok
//loadjscssfile('jsui/easyui-1.5.3/jquery.min.js', "js");
//loadjscssfile('jsui/easyui-1.5.3/jquery.easyui.min.js', "js");
$('#attNId').css('display', 'block'); //works fail
$('#attFId').css('display', 'none'); //works fail
}
}
我知道在DOM中找不到attNId
和attFId
,因为它们都来自ajax返回。所以我使用loadjscssfile
函数重新加载js head js。但它又失败了。
谁能帮帮我?
答案 0 :(得分:1)
这对你很好。
$('#attNId').show();
$('#attFId').hide();
答案 1 :(得分:0)
$('#attNId').attr("style", "display:none");
$('#attFId').attr("style", "display:block");
工作正常
答案 2 :(得分:0)
我认为你需要在ajax调用中使用complete: function()
。
因此,当您的ajax数据被抱怨时,您的storFirDoc()函数会被调用。如下。
$.ajax({
dataType: 'html',
type: "POST",
url: "oat.php",
data: {
standby: standby
},
success: function(data) {
$("#cenDiv").html(data);
$.parser.parse($('#corWSId').parent());
}
complete: function () {
var docTV = $('#docTitle').val();
if (docTV == "") {
alert("not none");
exit;
} else {
alert('test'); //works Ok
//loadjscssfile('jsui/easyui-1.5.3/jquery.min.js', "js");
//loadjscssfile('jsui/easyui-1.5.3/jquery.easyui.min.js', "js");
$('#attNId').css('display', 'block'); //works fail
$('#attFId').css('display', 'none'); //works fail
}
}
});