bernova Ответов: 0

Обход строкового массива на стороне сервера( код позади) на стороне клиента(java script)


Всем привет
Я хочу обойти массив строк в клиентском коде (javascript) следующим образом :

protected void Page_Load(object sender, EventArgs e)
       {
           string[] chi = { "sara","mathew" };

           Page.ClientScript.RegisterArrayDeclaration("chi", chi.ToString());
       }


и в клиентском коде :

<script type="text/javascript">  
function pp()
        {
            try
            {
                var iChi = new Array(10);
                for (var i = 0; i <chi.length; i++) {
                    iChip.push(chi[i]);
                }
               Rdr.CreatePrint(2,iChi);
            }
            catch (Err) {
                alert(Err.description);
            }
        }

< / script>

но я не могу получить доступ к чипу, который определен в коде позади вышеприведенного скрипта.

Что я уже пробовал:

при вызове массива в javascript не идентифицируйте массив, который определяете на нем.

Sergey Alexandrovich Kryukov

Вы никогда не вызываете JavaScript со стороны сервера. Просто подумайте об этом: код позади находится на стороне сервера, а JavaScript-на стороне клиента. Вы передаете данные со стороны сервера только косвенно, генерируя контент, включая код JavaScript, в своем HTTP-ответе. В этом собственно и заключается вся цель ASP.NET. В частности, вы можете включить некоторый JavaScript в свой ASP.NET файл и используйте, например, синтаксис Razor @ { ... } (или что бы вы ни использовали) для записи некоторого фрагмента кода JavaScript, вычисленного из ваших серверных данных.

—СА

bernova

как использовать массив chi в javascript ?!, какое есть решение ?!!
например :
http://www.codeproject.com/Questions/554912/sendplusfileplusnameplusformplusclientplussideplus

просто я меняю его на массив

an0ther1

Не знаю, зачем ты это делаешь, но все равно..
Предполагая, что у вас есть скрытое поле на Вашей странице ASP, которое вы заполняете на сервере, вы можете заполнить это поле своим текстом и разграничить его символом, который вряд ли будет использоваться в тексте - ниже я использовал символ";".
например: Сара; Мэтью
Затем на стороне клиента используйте;
ВАР objText = документ.метода getElementById('&л;%=HiddenfieldId.ClientID%>');
var objArray = objText. split(";");

0 Ответов