Здравствуйте.
У меня один QWebView, две кнопки, по которым в него загружаются 2 разных HTML, и далее в каждом вызывается JS:
ui->webView->page()->mainFrame()->evaluateJavaScript(jscontent);
Первый, не важно какой, запускается, второй - уже нет. В смысле они оба рабочие. И работает тот, который был первым вызван.
Сейчас определил, что второй именно добавляется к предыдущему, а не заменяет его.
Вот одна из секций(вторая идентичная) :
void StatisticDialog::totaltasksStat()
{
disconnect(ui->webView->page(), SIGNAL(loadFinished(bool)));
ui->webView->page()->mainFrame()->addToJavaScriptWindowObject("ClassDialog", this);
QString url = "qrc:/html/totaltasks.html";
// Запуск Amcharts JS блока
connect(ui->webView->page(), SIGNAL(loadFinished(bool)), this, SLOT(startAmchartsTotal()));
ui->webView->load(QUrl(url));
}
void StatisticDialog::startAmchartsTotal()
{
QFile file(":/html/js_fun_startAmchartsTotal.js");
file.open(QIODevice::ReadOnly);
QString jscontent = file.readAll();
file.close();
ui->webView->page()->mainFrame()->evaluateJavaScript(jscontent);
}
Наверное как-то очищать нужно перед evaluate?