строка ввода не в правильном формате (подтвердите код кнопки удаления позади) - PullRequest
0 голосов
/ 02 февраля 2011

Я пытаюсь получить новую строку при отображении сообщения. Что не так с этим кодом?

Button l = (Button)e.Row.FindControl("btnDelete");            
string textForMessage = @"<script language='javascript'> confirm('Are you sure you want to delete this record \ntest\ntest\ntest');</script>";            
l.Attributes.Add("onclick", textForMessage + DataBinder.Eval(e.Row.DataItem, "Name") + ")");

Ответы [ 2 ]

1 голос
/ 02 февраля 2011

ноно, там что-то не так ...

Я думаю, вы хотите сделать это:

string textForMessage = @"confirm('Are you sure you want to delete this record with the name: {0}');";            
l.Attributes.Add("onclick", String.Format(textForMessage, DataBinder.Eval(e.Row.DataItem, "Name"));
0 голосов
/ 02 февраля 2011

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

Button l = (Button)e.Row.FindControl("btnDelete");
string textForMessage = @"return confirm('Are you sure you want to delete this record with the name: {0}');";            
l.Attributes.Add("onclick", String.Format(textForMessage, DataBinder.Eval(e.Row.DataItem, "Name"));

Нет необходимости в скрипте блоках в виде строки внутри onclick кавычки известны как javascript для браузеров, и вам нужно добавить возврат ключей как return остановит удаление вызываемого события.

Edit 1 нет ничего плохого в том, что \ n вы можете легко добавить \ n, например

string textForMessage = @"return confirm('Are you sure you want to delete this record, \nwith the name: {0}\nsome more text lines');";

убедитесь, что ваша строка начинается с символа @ , как строка textForMessage = @ "message", иначе вам нужно использовать двойную косую черту

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