Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: 6460
Последний выпуск: 19.06.2015

Передать массив строк в функцию JavaScript

62K
28 марта 2012 года
Cyberatino
24 / / 06.03.2012
Вот что написано в файле Index.cshtml

 
Код:
@using MyNamespace;
@{ string[] names = MyControllerClass.GetNames();  }
 
Код:
<input type="text" readonly="readonly" onmouseover="doSomething(@names)"/>
После открытия Index.cshtml вот во что преобразуется код:

 
Код:
<input type="text" readonly="readonly" onmouseover="doSomething(System.String[])" >
Соотвественно System.String[] - это не то, что я хочу передавать в функцию. Как мне передать массив строк?
62K
30 марта 2012 года
Cyberatino
24 / / 06.03.2012
Вобщем это умеет делать код вида
Код:
<!--предположим эта функция возвращает массив строк из переданной во View модели-->
@{sting[] csharpstrings = Model.GetCSharpStrings()}

<!--приводим массив к виду понятному движку JS-->
<script type="text/javascript">
    var ar = new Array();
    var i=0;
    @foreach(string str in csharpstrings)
    {
        <text>
            ar[i] = @str;
            i++;
        </text>
    }
    //пока не вышли из скрипта инициализируем полученный массив; пусть функция initArrayInExternalFile() находится в externalfile.js
    initArrayInExternFile(ar);
</script>
Всё, мы проинициализировали массив строками и теперь можем юзать его во внешнем скрипте.

Знаете кого-то, кто может ответить? Поделитесь с ним ссылкой.

Ваш ответ

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог