как прочитать переменную javascript var, а затем передать ее значение для target-c

0

Я пытаюсь прочитать следующую переменную из javascript:

var a_value = 5;

Я попытался использовать ниже в методе webViewDidFinishLoad: (UIWebView *) в (- void):

NSString *result = [webView stringByEvaluatingJavaScriptFromString:
                    @"function f(){ return a_value; } f();"]; //try 1
NSString *result = [webView stringByEvaluatingJavaScriptFromString:
                    @"a_value"]; //try 2

но его появление пустым, я уже проверил в хромовом инспекторе, что эта переменная существует. Если я пытаюсь получить значение элемента dom, используя функцию document.getElementById, которая работает, но я не могу прочитать переменную.

Любая идея почему?

РЕДАКТИРОВАТЬ:

Если я попробую сделать следующее:

NSString *result = [webView stringByEvaluatingJavaScriptFromString:
                    @"alert(a_value)"]; //try 2

то предупреждение получает значение, но это бесполезно, поскольку я не могу показать предупреждение, и мне нужно это значение из окна предупреждения.

Теги:
uiwebview
variables

1 ответ

0

Я нашел решение: мне пришлось добавить пустую строку в переменную:

NSString *result = [webView stringByEvaluatingJavaScriptFromString:
                    @"function f(){ return ''+a_value; } f();"]; //try 1

Ещё вопросы

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