Javascript 仅适用于警报



我写了一些Javascript,它使用FormAPI for Teamsite循环遍历xml节点,并从其中一个节点中删除一个值。removeID 函数仅在警报在其中时才能正常工作。我尝试将操作分成不同的函数并在它们上放置 setTimeout(),但没有任何效果。该脚本仅在保存和关闭页面时执行,因此页面肯定已加载。有人有其他想法吗?

这有效:

   function removeID(xPath) {
        if(xPath.getChildByName('path') != undefined && xPath.getChildByName('id') != undefined){
          if(xPath.getChildByName('path').getValue() == "" && xPath.getChildByName('id').getValue() != ""){
              xPath.getChildByName('id').setValue('');
            alert("replaced ");
          }
        }
        return true;
    }

这不起作用(无警报):

      function removeID(xPath) {
        if(xPath.getChildByName('path') != undefined && xPath.getChildByName('id') != undefined){
          if(xPath.getChildByName('path').getValue() == "" && xPath.getChildByName('id').getValue() != ""){
              xPath.getChildByName('id').setValue('');
          }
        }
        return true;
    }

FormAPI 不是 Javascript,而是基于 Javascript 的 HP 特定框架。您的代码正在尝试操作 XML(在 TeamSite 世界中也称为 DCR),这是一种不好的做法,可能会导致不良结果。

相反,您需要IWItem对象,特别是IWItem.deleteInstance()方法来实现结果。

您还应该尝试从像自动编织这样的供应商那里获得一些培训,这样您就不会"破解"系统。

最新更新