Перенаправление URL-адреса ajax вызывает кавычки внутри кавычек

#c# #ajax #model-view-controller #syntax-error #quote

Вопрос:

Я заполняю список из вызова ajax, включая кнопку, которой будет присвоен уникальный идентификатор для перенаправления на страницу.

Проблема, с которой я сталкиваюсь, заключается в том, что в нем так много цитат, что он неправильно читается

   row.append("<td><button onclick="location.href='@Url.Action("UserForm\{"   user[i].id  "", "Request")'" >Edit</button</td>);
 

Я попробовал несколько различных вариантов кавычек, но безуспешно.

Пожалуйста, помогите.

Обновить:

Я заставил его работать для общего перенаправления, но без уникального идентификатора, изменив кавычки на обратные галочки:

 row.append(`<input type="button" value="Edit" onclick="location.href='@Url.Action("UserForm",  "Request")'" />`);
 

Однако мне все еще нужно добавить /{user[i].id} после формы пользователя. Не повезло добавить в него переменную, не вызвав проблем с синтаксисом.

исходный код формы пользователя:

 [RoutePrefix("Request")]
public class NewUserController : Controller
{
        [Route("UserForm")]
        [CustomAuthorize(Roles = UserRole.Any)]
        public ActionResult ManagerNewUserForm()
        {
            return View("~/Views/Request/UserForm.cshtml");
        }
}

 

Комментарии:

1. Просмотрите исходный код в браузере и поделитесь сгенерированным HTML-кодом здесь, чтобы мы могли увидеть, что он выводит.

2. UserForm{ где совпадение } ?

3. @mjwills <кнопка onclick=»местоположение.href=» форма запроса пользователя «>Редактировать<кнопка onclick=»местоположение.href=» форма запроса пользователя «></кнопка>

4. Это было View source конкретно от кого? Как именно вы получили эту строку?

5. Это из источника представления

Ответ №1:

Исправил это.

Поэтому я смешивал html и cshtml.

решение, которое сработало:

  row.append("<a class='btn btn-default' href='"   '@Url.Action("UserForm", "Request")'   user[i].Id   "'>Edit</a>");