当我在文件javascript中使用示例$.subscribe('grillaCompleta',function(){...};
的方法时,这不起作用;但是如果我在同一个jsp页面中使用,那就工作吧。
工作:
<script type="text/javascript">
$.subscribe('grillaCompleta',function(){...};
</script>
不工作,如果代码在JavaScript文件中:
<script type="text/javascript" src="js/codigoJavaScript.js"></script>
codigoJavaScript.js简称:
function OnChangeTurnoMarcacion(event){
$('#txtBuscar').val('');
$('#grilla').jqGrid('setGridParam',{url:'cargarMarcacion.html?
idperiodo='+$('#cboPeriodos').val()+'&idcentrocosto='+$('#cboUnidades')
.val()+"&turno="+event.value}).trigger('reloadGrid');
};
$.subscribe('grillaCompleta',function(){
var grid = $("#grilla");
var ids = grid.jqGrid("getDataIDs");
for ( var i = 0; i < ids.length; i++) {
var id = ids[i];
var row = grid.jqGrid("getRowData",id);
for ( var j = 1; j < 32; j++) {
if (j<10){
var color = row["d0"+j+"_c"];
grid.jqGrid('setCell',id,'d0'+j,'',{'background-color':color},{'title':j});
}else{
var color = row["d"+j+"_c"];
grid.jqGrid('setCell',id,'d'+j,'',{'background-color':color},{'title':j});
}
}
}
});
function OnChangePeriodoMarcacion(event){
$('#txtBuscar').val('');
$('#grilla').jqGrid('setGridParam',{url:'cargarMarcacion.html?
idperiodo='+event.value+'&idcentrocosto='+$('#cboUnidades')
.val()+"&turno="+$('#cboTurnos').val()}).trigger('reloadGrid');
};
好的做法是将文件javascript中的所有代码都包含在内。
答案 0 :(得分:0)
$.subsribe()
实际上已绑定到文档,因此请确保文档已准备就绪。
$(document).ready(function(){
$.subscribe(...);
...
});
请注意,javascript中的函数不需要以分号结尾。