Asp.net

三重引號?如何在 ASP.NET 中分隔數據綁定的 Javascript 字元串參數?

  • August 5, 2008

如何在錨OnClick事件中分隔 Javascript 數據綁定字元串參數?

  • 我在 ASP.NET 中繼器控制項中有一個錨標記。
  • OnClick錨點事件包含對 Javascript 函式的呼叫。
  • Javascript 函式接受一個字元串作為其輸入參數。
  • 字元串參數使用來自中繼器的數據綁定值填充。

我需要Container.DataItem.

我需要OnClick.

而且對於 Javascript 函式呼叫的輸入字元串參數,我還需要一個分隔符(三引號?)。

由於我不能再次使用“單引號”,如何確保 Javascript 函式知道輸入參數是字元串而不是整數?

如果沒有圍繞輸入字元串參數的額外引號,Javascript 函式會認為我正在傳遞一個整數。

錨點:

<a id="aShowHide" onclick='ToggleDisplay(<%# DataBinder.Eval(Container.DataItem, "JobCode") %>);' >Show/Hide</a>    

還有我的 Javascript:

<script language="JavaScript" type="text/javascript">
/* Shows/Hides the Jobs Div */
function ToggleDisplay(jobCode)
{
   /* Each div has its ID set dynamically ('d' plus the JobCode) */
   var elem = document.getElementById('d' + jobCode);

   if (elem) 
   {
       if (elem.style.display != 'block') 
       {
           elem.style.display = 'block';
           elem.style.visibility = 'visible';
       } 
       else
       {
           elem.style.display = 'none';
           elem.style.visibility = 'hidden';
       }
   }
}
</script>

我最近遇到了類似的問題,解決它的唯一方法是對單'引號 ( ) 和雙引號 ( ") 使用普通的舊 HTML 程式碼。

原始碼當然是一團糟,但它確實有效。

嘗試

<a id="aShowHide" onclick='ToggleDisplay("<%# DataBinder.Eval(Container.DataItem, "JobCode") %>");'>Show/Hide</a>

要麼

<a id="aShowHide" onclick='ToggleDisplay('<%# DataBinder.Eval(Container.DataItem, "JobCode") %>');'>Show/Hide</a>

引用自:https://stackoverflow.com/questions/1873