Мне нужно окно подтверждения перед вызовом действия, указанного в Url.Action
. Мой код:Атрибут String в Razor как часть подтверждения onclick
<a href="@Url.Action("Delete", "OriginalWorks", new {id = w.Id})"
onclick="return confirm('Do you... '+ @w.Title + '?')"><span></span></a>
Где w
является экземпляром класса OriginalWork. Если я просматриваю HTML-сайт, в подтверждении есть правильное строковое значение, но окно не отображается, и действие вызывается немедленно. Если сделать то же самое с атрибутом ИНТ, например Id
:
<a href="@Url.Action("Delete", "OriginalWorks", new {id = w.Id})"
onclick="return confirm('Do you... '+ @w.Id + '?')"><span></span></a>
Он работает, как ожидалось, показывая сообщение в окне подтверждающим со значением идентификатора.
Я пробовал Title.toString()
, но это не поможет. Я думаю, что это сработает с Html.ActionLink
, но я хочу использовать это из-за span
в элементе a
.
Любые идеи? Большое спасибо.
Может быть, w.Title имеет значение null? – Smartkid
Можете ли вы подтвердить, что такое «правильное строковое значение в подтверждении»? Есть ли какие-либо кавычки в строке, нарушающей javascript? –
Да. Скорее всего, у вас есть паразитная одиночная кавычка в вашем строковом значении, что приводит к преждевременному прекращению строки JS и возникновению ошибки JS. –