【发布时间】:2022-01-07 05:37:20
【问题描述】:
我正在尝试使用“evaluateJavascript”从 iOS 调用带有参数的 Javascript 函数,一切正常,但未发送参数值,请参阅下面的代码
-(void) callJavascriptFunc: (NSString*)val{
//Example val is "Apple" string
[self.webview evaluateJavascript:@"exampleFuncName(val, '\(someConstant)')" completionHandler: nil];
}
Javascript:
exampleFuncName(value1: string, value2: string){
console.log("values == ", value1 + " , " + value2)
}
控制台: ReferenceError:找不到变量:val
我可以调用函数但不能传递变量。 使用 evaluateJavascript 调用函数时是否存在语法问题
注意:我已经检查过 val 有一个值。
【问题讨论】:
-
[self.webview evaluateJavascript:@"exampleFuncName('\(val)', '\(someConstant)')" completionHandler: nil];怎么样 -
不,它只是给出字符串 val 而不是实际值 "Apple"
-
啊,对不起。您正在使用 Objective-C 不迅速。那么呢:
NSString* script = [NSString stringWithFormat:@"exampleFuncName(%@, '\(someConstant)')", val]; [self.webview evaluateJavascript:script completionHandler: nil];
标签: ios objective-c wkwebview evaluatejavascript