Конструктор форм C #, использующий JavaScript (onblur) для замены двойных кавычек - конфликт с 2 двойными кавычками в одинарных кавычках - PullRequest
0 голосов
/ 17 марта 2012

Я изменяю приложение для создания пользовательских форм, написанное на C #, добавив onblur для замены проблемных символов, таких как <> /\ и, надеюсь, ". Я могу заставить все замены работать, кроме двойных кавычек из-за моей проблемы с двумя двойными кавычками. Может кто-нибудь помочь мне заставить это работать?
Вот немного моего кода:

this.Controls.Add(new LiteralControl(String.Format(@"   
... lots of html ...
<input name=""txtTextLabel"" id=""txtTextLabel"" type=""text"" onblur=""this.value = this.value.replace('<', '[').replace('>', ']').replace('double quotes', '');""/>
... lots more html ...
"));

1 Ответ

1 голос
/ 17 марта 2012

у меня ниже работает:

<input name="txtTextLabel" id="txtTextLabel" type="text" 
onblur='this.value = this.value.replace("<", "[").replace(">", "]").replace("\"", "");'/>

Я поставил \ перед двойной кавычкой, потому что именно так вы избегаете двойной кавычки в Javascript.

Обратите внимание, что в атрибуте onblur я полностью изменил использование одинарных и двойных кавычек, чтобы они работали.

Также я понимаю, что в вашем коде вы заменяете <на [и> на]

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...