Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/413.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Oracle Apex中的Javascript;无法调用未定义的substr方法;_Javascript_Jquery_Oracle Apex - Fatal编程技术网

Oracle Apex中的Javascript;无法调用未定义的substr方法;

Oracle Apex中的Javascript;无法调用未定义的substr方法;,javascript,jquery,oracle-apex,Javascript,Jquery,Oracle Apex,我试图在Oracle Apex网页上使用JavaScript函数。对象将具有一个链接,该链接在最初单击时打开所有子区域,再次单击时关闭所有子区域。本质上,是一个简单的切换。功能如下: initContentFrameTabs = function(){ $('div.uFrameRegionSelector > ul li a').click(function(e){ e.preventDefault(); link = $(this); subregions = link.parents

我试图在Oracle Apex网页上使用JavaScript函数。对象将具有一个链接,该链接在最初单击时打开所有子区域,再次单击时关闭所有子区域。本质上,是一个简单的切换。功能如下:

initContentFrameTabs = function(){
$('div.uFrameRegionSelector > ul li a').click(function(e){
e.preventDefault();
link = $(this);
subregions = link.parents('.uFrameMain').find('section.uHideShowRegion');
link.parents("ul").find('li a').removeClass('active')

if (link.hasClass('showAllLink')) {
   expandAllSections();
   // subregions.show();
   link.addClass('active');
   document.getElementById('Title').innerHTML = 'Hide All';
 } else if (link.hasClass('active')) {
   hideAllSections();
   link.parents("ul").find('li a').removeClass('active')
   document.getElementById('Title').innerHTML = 'Show All';
 } else {
   expandSection(link.attr('id').substr(4));
   // subregions.hide();
   // $('#'+link.attr('id').substr(4)).show();
   link.addClass('active')
 }
})
}
它一开始似乎可以工作,当我点击我的链接时,它会打开所有子区域,文本会发生变化,以反映它的新功能,即全部隐藏。
然而,从那时起,它就不起作用了。此时我收到一个错误,即:

未捕获的TypeError:无法调用未定义的方法“substr”

它声称此错误被抛出我的子字符串行,就在else子句之后。

有人能解释一下为什么会发生这种情况吗?

看来link.attr('id')没有定义。所以我想看看,在你第一次点击之后,这个链接是否还有一个ID属性。很可能,链接是重新创建的,第二次创建时没有id

但是,首先,在链接之后,打开DOM,看看链接是否仍然具有该属性