почему для использования escape-символа javascript в кавычках в строке необходимо использовать \\ 'вместо \'

У меня просто проблемы с javascript, который я использую в коде на asp.net, после нескольких часов выяснения это оказалось проблемой escape-символа.

Сначала я использую это.

ScriptManager.RegisterStartupScript(this, this.GetType(), "temp", "alert('Can't delete this data because it is bound with rate plan');", true);

Это приведет к ошибке javascript, потому что в кавычке «не может» должен использоваться escape-символ, поэтому я использую.

ScriptManager.RegisterStartupScript(this, this.GetType(), "temp", "alert('Can\'t delete this data because it is bound with rate plan');", true);

, но он все еще не работает.

Наконец, я использую

ScriptManager.RegisterStartupScript(this, this.GetType(), "temp", "alert('Can\\'t delete this data because it is bound with rate plan');", true);

, и это нормально .

Мне просто любопытно, почему нам нужно использовать \\ ' вместо \ ', чтобы escape-символ работал правильно.

5
задан Marcel Korpel 2 May 2011 в 09:48
поделиться