📄 birtparameterdialog.js
字号:
}
// deal with radio box with textarea or password area
if( oIEC[j+1].name && oIEC[j+1].value )
{
this.__parameter[k].name = oIEC[j+1].name
this.__parameter[k].value = oIEC[j+1].value;
k++;
}
else
{
this.__parameter[k].name = oIEC[j].value
this.__parameter[k].value = oIEC[j+1].value;
//oIEC[j+1].value = "";
k++;
}
// set display text for the List type parameter with entered value
if( !this.__parameter[k] )
{
this.__parameter[k] = { };
}
this.__parameter[k].name = this.__isdisplay + this.__parameter[k-1].name;
this.__parameter[k].value = oIEC[j+1].value;
k++;
}
else if( oSEC[0] )
{
// deal with "select" parameter
if ( oSEC[0].selectedIndex == -1 )
{
oSEC[0].focus( );
alert( oIEC[j].value + " should have a value" );
return false;
}
var temp = oSEC[0].options[oSEC[0].selectedIndex].text;
if ( !temp )
{
oSEC[0].focus( );
alert( oIEC[j].value + " should have a value" );
return false;
}
// Check if select 'Null Value' option
if( temp && temp != 'Null Value' )
{
this.__parameter[k].name = oIEC[j].value;
this.__parameter[k].value = oSEC[0].options[oSEC[0].selectedIndex].value;
k++;
// set display text for the "select" parameter
if( !this.__parameter[k] )
{
this.__parameter[k] = { };
}
this.__parameter[k].name = this.__isdisplay + this.__parameter[k-1].name;
this.__parameter[k].value = oSEC[0].options[oSEC[0].selectedIndex].text;
k++;
}
else
{
this.__parameter[k].name = this.__isnull;
this.__parameter[k].value = oIEC[j].value;
k++;
}
}
else if( !oIEC[j+1] && !oIEC[j].name )
{
//deal with common radio with null value
this.__parameter[k].name = this.__isnull;
this.__parameter[k].value = oIEC[j-1].name;
k++;
}
else
{
//deal with common radio
this.__parameter[k].name = oIEC[j].name;
this.__parameter[k].value = oIEC[j].value;
k++;
// set display text for the "radio" parameter
var displayLabel = document.getElementById( oIEC[j].id + "_label" );
if( !displayLabel )
continue;
if( !this.__parameter[k] )
{
this.__parameter[k] = { };
}
this.__parameter[k].name = this.__isdisplay + this.__parameter[k-1].name;
this.__parameter[k].value = displayLabel.innerHTML;
k++;
}
}
}
}
}
return true;
},
/**
* Handle clicking on select.
*
* @event, incoming browser native event
* @return, void
*/
__neh_click_select : function( event )
{
var matrix = new Array( );
var m = 0;
for( var i = 0; i < this.__cascadingParameter.length; i++ )
{
for( var j = 0; j < this.__cascadingParameter[i].length; j++ )
{
if( this.__cascadingParameter[i][j].name == Event.element( event ).id.substr( 0, Event.element( event ).id.length - 10 ) )
{
var tempText = Event.element( event ).options[Event.element( event ).selectedIndex].text;
// Null Value Parameter
if( tempText == this.__display_null )
{
this.__cascadingParameter[i][j].value = this.__cascadingParameter[i][j].name;
this.__cascadingParameter[i][j].name = this.__isnull;
}
else
{
this.__cascadingParameter[i][j].value = Event.element( event ).options[Event.element( event ).selectedIndex].value;
}
for( var m = 0; m <= j; m++ )
{
if( !matrix[m] )
{
matrix[m] = {};
}
matrix[m].name = this.__cascadingParameter[i][m].name;
matrix[m].value = this.__cascadingParameter[i][m].value;
}
birtEventDispatcher.broadcastEvent( birtEvent.__E_CASCADING_PARAMETER, matrix );
}
}
}
},
/**
* Handle press "Enter" key.
*
* @event, incoming browser native event
* @return, void
*/
__neh_keydown: function( event )
{
// If press 'Enter' key
if( event.keyCode == 13 )
{
var target = Event.element( event );
// Focus on INPUT(exclude 'button' type) and SELECT controls
if( (target.tagName == "INPUT" && target.type != "button" )
|| target.tagName == "SELECT")
{
this.__okPress( );
Event.stop( event );
}
}
},
/**
* Handle clicking on okRun.
*
* @event, incoming browser native event
* @return, void
*/
__okPress : function( )
{
if( birtParameterDialog.collect_parameter( ) )
{
var action = window.location.href.toLowerCase( );
if ( this.__mode == 'parameter' )
{
birtEventDispatcher.broadcastEvent( birtEvent.__E_CACHE_PARAMETER );
}
else if ( this.__mode == 'run'
|| ( this.__mode == 'frameset' && action.indexOf( '&__format=pdf' ) > 0 ) )
{
this.__doSubmit( );
}
else
{
birtEventDispatcher.broadcastEvent( birtEvent.__E_CHANGE_PARAMETER );
this.__l_hide( );
}
}
},
/**
* Override cancel button click.
*/
__neh_cancel : function( )
{
if ( this.__mode == 'parameter' )
{
this.__cancel();
}
else
{
this.__l_hide( );
}
},
/**
* Handle submit form with current parameters.
*
* @return, void
*/
__doSubmit : function( )
{
var action = window.location.href;
var divObj = document.createElement( "DIV" );
document.body.appendChild( divObj );
divObj.style.display = "none";
var formObj = document.createElement( "FORM" );
divObj.appendChild( formObj );
if ( this.__parameter != null )
{
for( var i = 0; i < this.__parameter.length; i++ )
{
var param = document.createElement( "INPUT" );
formObj.appendChild( param );
param.TYPE = "HIDDEN";
param.name = this.__parameter[i].name;
param.value = this.__parameter[i].value;
//replace the URL parameter
var reg = new RegExp( "&" + param.name + "[^&]*&*", "g" );
action = action.replace( reg, "&" );
}
}
formObj.action = action;
formObj.method = "post";
this.__l_hide( );
formObj.submit( );
},
/**
* Caching parameters success, close window.
*
* @return, void
*/
__close : function( )
{
if ( BrowserUtility.__isIE( ) )
{
window.opener = null;
window.close( );
}
else
{
window.status = "close";
}
},
/**
* Click 'Cancel', close window.
*
* @return, void
*/
__cancel : function( )
{
window.status = "cancel";
},
/**
Called right before element is shown
*/
__preShow: function()
{
// disable the toolbar buttons
birtUtility.setButtonsDisabled ( "toolbar", true );
// disable the Navigation Bar buttons
birtUtility.setButtonsDisabled ( "navigationBar", true );
},
/**
Called before element is hidden
*/
__preHide: function()
{
// enable the toolbar buttons
birtUtility.setButtonsDisabled ( "toolbar", false );
// enable the Navigation Bar buttons
birtUtility.setButtonsDisabled ( "navigationBar", false );
}
}
);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -