Передать URL-адрес, сохраненный в модели, в jquery var (для KendoGrid)

0

У меня проблема, которая кажется смешной. Я пытаюсь установить URL-адрес базового сервиса WebApi с моего контроллера и передать его в интерфейс /jquery для использования в KendoGrid. Я не могу передать URL-адрес в строковой переменной изнутри модели в jquery var без получения ошибки, например:

ReferenceError: invalid assignment left-hand side
var crudServiceBaseUrl = "http://localhost:55607/api/StockSelectorWebApi?" + sea...

и если я UrlEncode это:

SyntaxError: identifier starts immediately after numeric literal
var crudServiceBaseUrl = http%3a%2f%2flocalhost%3a55607%2fapi%2fStockSelectorWeb...

мой запрос выглядит следующим образом:

    var crudServiceBaseUrl = @Model.CrudBaseServiceUrl;

    var dataSource = new kendo.data.DataSource({
        transport: {
            read: {
                url: crudServiceBaseUrl,
                dataType: "json"
            }
        },
        batch: true,
        pageSize: 20,
        schema: {
            model: {
                id: "WedNo",
                fields: {
                    WedNo: { editable: false, nullable: true, type: "number" },
                    MillNo: { editable: false, nullable: true, type: "string" },
                    Location: { editable: false, nullable: true, type: "string" },
                    Stockholder: { editable: false, nullable: true, type: "string" },
                    Auths: { editable: false, nullable: true, type: "string" }
                }
            }
        }
    });

и моя модель:

model.CrudBaseServiceUrl = Server.UrlEncode("http://localhost:55607/api/StockSelectorWebApi?searchType=Arrival&parameterOne=" + model.Arrival);

EDIT: Как ни странно, я тоже попробовал

model.CrudBaseServiceUrl = "'URLHERE'";

а также

model.CrudBaseServiceUrl = "'" + "URLHERE" + "'";

Но ни один из них не работал, но, как было указано ниже (в принятом ответе), просто выполните:

model.CrudBaseServiceUrl = "URLHERE";

а потом

var crudServiceBaseUrl = '@Model.CrudBaseServiceUrl';

pffttt

Теги:
variables
asp.net-mvc-4
telerik-mvc

1 ответ

1
Лучший ответ

var crudServiceBaseUrl = '@Model.CrudBaseServiceUrl'

в основном, если вы используете строковые переменные, поступающие с сервера в javascript, вы должны использовать кавычки вокруг них. нет необходимости кодировать или что-то еще.

  • 0
    Doh! спасибо, работает отлично.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню