#javascript #html #objective-c
#javascript #HTML #objective-c
Вопрос:
В моем проекте я считываю набор данных из файла .hsp с помощью следующего кода:
-(void)readingFile:(NSString *)str
{
NSString *value ;
if([str isEqual:@"1"]){
value =@"n";
}else if([str isEqual:@"2"]){
value =@"a";
}else if([str isEqual:@"3"]){
value =@"c";
}
NSLog(@"%@",value);
NSString *path = [[NSBundle mainBundle] pathForResource:value ofType:@"hsp"];
NSString *contents = [NSString stringWithContentsOfFile:path encoding:NSASCIIStringEncoding error:nil];
NSArray *lines = [contents componentsSeparatedByCharactersInSet:[NSCharacterSet characterSetWithCharactersInString:@"rn"]];
for (NSString* line in lines) {
if (line.length) {
NSLog(@"line: %@", line);
}
}
}
Данные выглядят следующим образом:
c vo val 13
c he val 0
c rr val 0.2
c ccs val 0.10
c rr val 0.54
c cc val 9
c rr val 10.75
С помощью onclick
переключателя на моей HTML-странице я должен передать вышеуказанные значения в файл библиотеки, который находится внутри самого проекта.
Это JS, который я использую на HTML-странице:
function callToXcode(p1)
{
window.location ="call?cmd=getDetailsamp;param1=" p1;
//alert(p1);
}
итак, как передать значения в библиотеку, которая находится в проекте, из objective C.
Комментарии:
1. На самом деле вы не указали проблему.
2. Привет, Джош Касвелл, я снова отредактировал вопрос, четко указав проблему.
3. Нет, извините, вы этого не сделали. В заголовке вы спрашиваете, как передать значения ObjC-> Javascript. Но в вашем вопросе все о чтении файлов и о передаче значений Javascript-> ObjC. Пожалуйста, явно укажите, что вы хотите передать в javascript, и покажите код javascript, который должен использовать значения.
Ответ №1:
Есть 2 ответа.
Если вы хотите передать значение из одной библиотеки в другую и не знаете как, самый простой способ — сохранить данные в файле на одном языке, а когда другой будет использоваться, он прочитает файл.
Если вы используете UIWebView и хотите прочитать значение Java Script на странице, это можно сделать с помощью этой функции:
- (NSString *)stringByEvaluatingJavaScriptFromString:(NSString *)script;
Затем вы можете использовать множество стратегий для подключения Java Script и Objective-c. Этот код считывает содержимое 2 текстовых полей:
NSString *code =
@"var value = document.getElementsByName('textbox1')[0].value ";" "
" document.getElementsByName('textbox2')[0].value;n"
" value n"; //Just read the variable value to send it out
NSString *result = [webview stringByEvaluatingJavaScriptFromString:code];
Это создаст строку с: text1;text2
. Затем вы можете делать с этим все, что хотите.