javascript - 如何从 Qt 调用 evaluateJavaScript() 函数?

标签 javascript qt qwebview

我无法从 QT 调用 javascript 函数。

我正在使用下面的代码

QT代码:
QWebFrame *frame = m_d->m_webView->page()->mainFrame(); frame->evaluateJavaScript("displayhello()");

 Here `displayhello()` is the `Javascript` function defined in the HTML file.

HTML 代码:

<html>
<head>
<script type="text/javascript" src="" />

<script type="text/javascript">
   function displaymessage(str)
   {
       alert(str);
   }
   function displayhello()
   {
       alert("Hello");
   }
</script>
</head>
<body>
<form>
<input type="button" value="Click me!" onClick="displayhello()">
</form>
</body>
</html>

谁能告诉我为什么没有调用 Javascript 函数。

最佳答案

我知道这篇文章很旧,但万一有人有相同的文章:

始终检查 Dev Tools 以查看 JavaScript 控制台告诉您的内容。 您可以通过将此行添加到您的 QT 主函数来启用 devtools

QWebSettings::globalSettings()->setAttribute(QWebSettings::DeveloperExtrasEnabled, true);

现在通过右键单击->检查,控制台,您会看到 JS 解释错误。

关于javascript - 如何从 Qt 调用 evaluateJavaScript() 函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12578377/

相关文章:

qt - 列数可变的 QML Repeater 和 QML Grid Layout

webkit - QWebview/webkit 禁用文本选择

mingw - Qt5.6中的跨平台Webview

android - 在 webview 中自动播放视频

javascript - jQuery .animate() 循环随时间产生意外偏移

c++ - 策略模式 Qt 模糊基础

c++ - 用QT播放视频

javascript - Leaflet.js - 使用自定义 map 服务器

javascript - 为行 knockout 创建标题

javascript - chrome.tabs.executeScript : Doesn't work when I tried to insert an image into specific website