Hello,
I am trying out the free version of tabbar. I am running into a strange problem. In Firefox the division, authtabbar, displays correctly. However, when using IE an error is thrown:
Invalid argument.
dhtmlxtabbar.js Line: 211
Code: 0
The top of the tabbar shows up however the table that should show up from Ajax request does not. It works in Firefox.
That line of code is here:
if (window.execScript)window.execScript(s);else window.eval(s)}};this.obj.attachURL = function(url, ajax) {this._attachContent((ajax==true?"urlajax":"url"), url, false)};this.obj._attachContent = function(type, obj, append) {if (append !== true){while (that.dhxcont.mainCont.childNodes.length > 0){that.dhxcont.mainCont.removeChild(that.dhxcont.mainCont.childNodes[0])}};if (type == "url"){var fr = document.createElement("IFRAME");fr.frameBorder = 0;fr.border = 0;fr.style.width = "100%";fr.style.height = "100%";that.dhxcont.mainCont.appendChild(fr);fr.src = obj;this._frame = fr;if (this._doOnAttachURL)this._doOnAttachURL(true)}else if (type == "urlajax"){var t = this;var xmlParser=function(){t.attachHTMLString(this.xmlDoc.responseText,this);if (t._doOnAttachURL)t._doOnAttachURL(false);this.destructor()};var xmlLoader = new dtmlXMLLoaderObject(xmlParser, window);xmlLoader.loadXML(obj);if (t._doOnBeforeAttachURL)t._doOnBeforeAttachURL(false)}else if (type == "obj"){that.dhxcont._frame = null;that.dhxcont.mainCont.appendChild(obj);that.dhxcont.mainCont.style.overflow = (append===true?"auto":"hidden");obj.style.display = ""}else if (type == "str"){that.dhxcont._frame = null;that.dhxcont.mainCont.innerHTML = obj}};this.obj._dhxContDestruct = function() {}}};(function(){dhtmlx.extend_api("dhtmlXTabBar",{_init:function(obj){return [obj.parent,obj.mode,obj.height]},
This error only occurs if I omit the height and width attributes for the div. If set the height and width attributes to static px values the error does not occur and the page displays correctly. I do not want to the division to have a set height though. Is this possible in IE or is this something that the pay version is needed to do?
Here is where I create my tabbar:
[code]echo “
”;echo "
tabbar = new dhtmlXTabBar('authtabbar', 'top');
tabbar.setSkin('modern');
tabbar.setSkinColors('#DDDDDD', '#C8D3DC', '#FFFFFF');
tabbar.setImagePath('/Tabbar/dhtmlxTabbar/codebase/imgs/');";
echo "tabbar.setHrefMode('ajax-html');";
if ($mod) {
echo "tabbar.addTab('tab1','History','80px');";
echo "tabbar.setContentHref('tab1','/NetDevices/authorizationUpdater.php?history=true');";
echo "tabbar.setTabActive('tab1');";
echo "tabbar.setHrefMode('ajax-html');";
}
if ($_SESSION['highestRole'] == 'Supervisor' OR $_SESSION['highestRole'] == 'asstSupervisor' ) {
echo "tabbar.addTab('tab2','Network Keys','80px');";
echo "tabbar.setHrefMode('ajax-html');";
echo "tabbar.setContentHref('tab2','/NetDevices/authorizationUpdater.php?networkKey=true');";
if ($add) echo "tabbar.setTabActive('tab2');";
}
echo "</script>";[/code]
Here is my AJAX call to another script that generates the content for the history tab:
[code]echo “
$dbh = new PDO(‘mysql:host=’.$_SESSION[‘OpsDBServer’].’.ops.tns.its.psu.edu;dbname=’.$_SESSION[‘OpsDB’], $_SESSION[‘yoM’], $_SESSION[‘aMa’]);
$authorizationHistArray = array();
$sqlHistReport = “SELECT * FROM AuthorizationHistory WHERE kerberosID = '”.$_SESSION[‘kerberosID’]."’ AND newRole = ‘".$_SESSION[‘role’]."’ ORDER BY modifiedDate";
$authorizationHistArray = $dbh->query($sqlHistReport);
echo “
Kerberos ID | ”;New Role | ”;Old Role | ”;New Status | ”;Old Status | ”;Modified Date | ”;Created/Modified By | ”;
---|---|---|---|---|---|---|
”; echo $a[‘kerberosID’]; echo “ | ”;”; echo $a[‘newRole’]; echo “ | ”;”; echo $a[‘oldRole’]; echo “ | ”;”; if ($a[‘newStatus’] == 1) echo “active”; if ($a[‘newStatus’] == 0) echo “inactive”; echo “ | ”;”; if ($a[‘oldStatus’] == 1) echo “active”; if ($a[‘oldStatus’] == 0) echo “inactive”; echo “ | ”;”; echo $a[‘modifiedDate’]; echo “ | ”;”; echo $a[‘modifiedBy’]; echo “ | ”;
echo “