2010-07-09 66 views
38

我發現自己現在正在做大量的jQuery,所以我開始將一些常見的事情抽象爲片段。我期待與社區分享這些內容,但我現在正在遇到一個問題。

片段中的文字通過在文字名稱周圍添加美元符號($)來定義,以便定義您希望提供的值的位置。這很困難,因爲jQuery使用美元符號表示法來使用它的許多功能。

什麼是片段的轉義序列,所以我能夠使用美元符號,並讓我的代碼片段仍然有效?

+0

更多的側面說明,但不要忘記你可以使用'jQuery'而不是'$' – 2010-07-09 19:09:20

回答

79

要有文字$嘗試加倍它:$$

+1

它在C#中並不適用於我。 – 2016-06-01 15:51:59

+0

@JosephMorgan它在C#中爲我工作(VS2015作爲參考)。 – 2016-08-23 14:38:31

+0

當使用標籤時,這種方法仍然保持光標跳到這個位置。有了這個[答案](http://stackoverflow.com/a/43427442/1909798)我可以正確地逃脫。 – robsonrosa 2017-04-27 20:44:51

6

雖然jQuery的反應是有效的,這是一個更好的語法使用$符號。

我找到了答案:使$字符的默認值爲$。

<Literal Editable="true"> 

<ID>dollar</ID> <ToolTip>replace the dollar sign character</ToolTip> <Default>$</Default> <Function> </Function> </Literal> 
+1

我發現這可以在C#中使用「$」作爲Formattable字符串類型。 – 2016-06-01 18:25:36

+0

我不確定添加示例是評論還是答案,所以由於篇幅的原因,我在下面添加了它。它基於這個答案。 – 2016-06-01 18:38:03

15

有一個爲代碼元素定義的「定界符」屬性。默認爲$,但你可以將它設置爲不同的字符,如〜左右。

...

<Snippet> 
<Code Language="JavaScript" Delimiter="~"><![CDATA[(function ($) { 
    $(document).ready(function() { 

    }); 
})(jQuery);]]></Code> 
</Snippet> 

...

1

我用這個在C#中的formattable字符串。我用上面的例子中從cory-fowler逐字:

<Literal Editable="true"> 
    <ID>dollar</ID> 
    <ToolTip>Replace the dollar sign character</ToolTip> 
    <Default>$</Default> 
    <Function></Function> 
</Literal> 

用法(換行被添加爲清楚起見對堆棧 溢出,而不是在原始)

string errMessage = $dollar$"Error occurred in 
     {MethodBase.GetCurrentMethod().Module}, in procedure 
     {MethodBase.GetCurrentMethod().Name}: {ex.Message}".ToString(); 

謝謝,科裏-捕鳥!

14

這是正確的方法:\\$

VSC\\解釋,它是一個字符多,而不是comidin。

+5

這個答案應該是被接受的答案 – robsonrosa 2017-04-27 20:42:50

+1

在VS2017中不起作用C# – SvdSinner 2018-01-24 15:42:33

+0

VSC = Visaul Studio代碼 – 2018-01-25 04:26:39