有人可以解释为什么我的 JavaScript 函数没有被调用。
JS函数是:
function loadKMLFile(kmlUrl)
{
alert('in loadKMLFile().');
google.earth.fetchKml(ge, kmlUrl, finishFetchKml);
}
我的 C++ Qt 代码是:
void MainWindow::on_loadKML_button_clicked()
{
QString fileUrl = ui->textEdit->toPlainText(); // Get path to file
ui->webView->page()->mainFrame()->evaluateJavaScript("loadKMLFile(" + fileUrl + ")");
}
当我运行我的应用程序时,我输入了要加载的文件的路径。然后由上面的 C++ 方法提取,并通过路径中传递的 evaluateJavaScript 进行调用。
如果传入的路径为空字符串,则调用JS函数并出现警告框。如果在文本编辑中放置单个字符(更不用说整个路径),则不会调用该函数我不会出现警告框。
任何想法将不胜感激。