我想在向此页面发出请求时禁用jsp页面中的加号图标。 怎么做?
我试过这个
if ($("#errorMsgForItem").val() == "noloc")
{
$("#add_" + myGrid[0].id).addClass('ui-state-disabled');
console.debug("No Item location found...");
}
更新:更多代码
这是一个函数(createNew
),将在同一页面上调用后通过AJAX提交表单
function createNew(aDateVal){
$("#searchProductDiv").css("display","block");
$("#itemfilterParamDiv_org").css("display","none");
$('#createNewInventoryBlock').dialog('close');
$("#saveSubgridItem").show();
if(aDateVal == null || aDateVal == ""){
$("#dateValidationMsg").html("Enter date");
$("#saveSubgridItem").hide();
}else{
blockPanel("centerPanel");
$.ajax({
url: "validationAgainstExistData.htm?date="+aDateVal+"&dateFormat="+controllerDateFormat,
success: function(data){
$("#errorMsgForItem").val( $.trim(data));
if ($("#errorMsgForItem").val() == "yes")
{
$("#dateValidationMsg").hide();
$("#errorMsgDisplay").show();
$("#errorMsgDisplay").html("Inventory for the selected date already exists. Click on the inventory date to open it for edit.");
$("#centerPanel").unblock();
}else{
//$("#itemLocationGrid").jqGrid("navGrid", "#itemLocationGridPager", {add: false});
var msg =null;
$("#dateValidationMsg").hide();
$("#errorMsgDisplay").hide();
$("#itemLocationGridContainer").show();
loadItem(aDateVal,msg);
$("#categoryDisplayId").show();
$("#modifiedUserLabelId").show();
$("#userListDisplayTitleId").show();
//$('#itemLocationGrid').jqGrid().trigger('reloadGrid');
//$("#itemLocationGridContainer,#itemLocationGrid").jqGrid("navGrid", "#itemLocationGridPager", {add: false});
var myGrid = jQuery("#itemLocationGridContainer");//itemLocationGrid
$("#edit_" + myGrid[0].id).addClass('ui-state-disabled');
$("#del_" + myGrid[0].id).addClass('ui-state-disabled');
$("#add_" + myGrid[0].id).addClass('ui-state-disabled'); //nothing happening
$("#centerPanel").unblock();
// $("#createNewInventoryBlock").dialog({autoOpen: true });
}
}
});
}
}
HTML
<div id="searchProductName" style="display:none"></div>
<div id="itemLocationGridContainer" style="float:left;margin-top: 20px;display:none" >
<p class="ui-widget" style="font-size: 12.5px;color: blue;">During editing a cell, do not drag the rows for rearranging.</p>
<table id='itemLocationGrid'></table>
<div id='itemLocationGridPager'></div>
<div id ="addProduct" style="display:none;background-color:#DFEFFC;width:340px;height:auto;opacity: 0.99;filter:alpha(opacity=65);"></div>
<div id ="productItemLocationId" title="Location "></div>
<div style="display: none;" id="calculateItemSummariesBasedOnItemCategory"></div>
</div>
答案 0 :(得分:0)
addClass('ui-state-disabled')
禁用“添加”按钮而不是隐藏。您可以使用jQuery.hide
来隐藏它:
var myGrid = $("#grid");
// hide Add button
$("#add_" + myGrid[0].id).hide();
我应该注意,只有在需要**动态*显示或隐藏添加按钮时才应使用上面的代码。如果您不需要该按钮,则只需使用add: false方法的navGrid选项:
// create navigator with Edit and Delete buttons, without Add button
$("#grid").jqGrid("navGrid", "#pager", {add: false});
如果你需要动态隐藏/显示一些导航按钮,你应该创建所有按钮并在需要时隐藏/显示按钮。有关详细说明使用导航按钮的详细信息,请参阅the answer和another one。