HTML / JavaScript / NetSuite函数得到不正确的结果

问题描述 投票:0回答:1

我有内联的“ html / javascript”,它是通过保存的搜索结果列上的“公式(文本)”字段注入浏览器的。换句话说,这会为结果列中的每一行创建一个按钮,该按钮将针对特定的行/记录(即internalid)执行javaScript。 虽然按钮链接正常工作(即导航至正确的记录),但JavaScript Alert结果对所有按钮单击行均产生相同的{internalid}

'<html>
   <a target="_blank" id="Link" href="https://website.com/rectype=142&id='||{internalid}||'">
     <button  id="Button" type="button" onclick=test();> Check-In 
     </button>
   </a>
   <script> 
      function test() {var x = document.getElementById("Link").href; alert(x);} 
   </script> 
 </html>'

当前警报结果:第1行[签入]按钮单击警报=https://website.com/rectype=142&id=157第2行[签入]按钮单击Alert = https://website.com/rectype=142&id=157

所需的警报结果:第1行[签入]按钮单击警报=https://website.com/rectype=142&id=157第2行[签入]按钮单击警报=https://website.com/rectype=142&id=158第3行[签入]按钮单击Alert = https://website.com/rectype=142&id=159

javascript html netsuite suitescript
1个回答
0
投票

{internalid}用作<a>元素ID的一部分。

我不熟悉此语法,但我相信它看起来像这样:

<a target="_blank" id="Link'||{internalid}||'" href="https://website.com/rectype=142&id='||{internalid}||'">

然后您的函数可能看起来像这样:

function test() {var x = document.getElementById("Link'||{internalid}||'").href; alert(x);} 

这是假设您的功能可以访问'||{internalid}||'。如果没有,您也许可以将其传递给函数。

© www.soinside.com 2019 - 2024. All rights reserved.