qt javascript ajax,Qt Webkit-浏览器交互问题

我正在开发一个包含OpenStreetMap应用程序作为HTML页面的Qt程序,该页面能够访问数据库(通过提交包含查询开始日期和结束日期的ajax表单)以检索和可视化查询.地图.我想将此查询过程从HTML / Javascript部分移至Qt.到目前为止,我设法通过Qt与浏览器进行了交互,但是仍然存在以下问题:

1)单击Qt的获取查询按钮,并弹出一个警告框,提示Ajax POST失败-数据库不在我的当前笔记本电脑上,当我单击“ HTML浏览器”窗口的获取时,我应该得到错误查询按钮或Qt的获取按钮-

2)而且,每当我单击HTML浏览器的“获取查询”按钮时,它都会显示POST警告,但还会显示额外的POST警告警报框,具体取决于我单击Qt的“获取查询”按钮的次数. -例如,如果我连续五次单击“ Qt的获取查询”按钮,然后单击一次HTML窗口的“获取”按钮,则我会连续收到6条POST失败消息-

HTML代码如下所示:

Start

End

AJAX表格的发布方法是这样的:

$(document).ready(function(){

// ajaxForm submit

$(#ajaxForm).submit(function() {

$.ajax({

type: POST,

url: heatQuery.php,

data: $(this).serialize(),

dataType: json,

success: function(response)

{

// update the points for heatmap layer

updateHeatMap(response);

},

error: function(errorMsg)

{

alert(Error in Ajax POST);

}

});

return false;

});

});

最后,调用该函数的Qt代码是这样的:

void MainWindow::onButtonClicked() // clicking the button in order to POST

{

//the QString a is the same ajax post function as declared above

QString a = "$(document).ready(function(){$(#ajaxForm).submit(function() {$.ajax({type: POST,url: heatQuery.php,data: $(this).serialize(),dataType: json,success: function(response){updateHeatMap(response);},error: function(errorMsg){alert(Error in Ajax POST);}});return false;});});";

this->view->page()->mainFrame()->evaluateJavaScript(a);

}

对这里出什么问题有任何想法吗?谢谢.

我正在开发一个包含OpenStreetMap应用程序作为HTML页面的Qt程序,该页面能够访问数据库(通过提交包含查询开始日期和结束日期的ajax表单)以检索和可视化查询.地图.我想将此查询过程从HTML / Javascript部分移至Qt.到目前为止,我设法通过Qt与浏览器进行了交互,但是仍然存在以下问题: 1)单击Qt的获取查询按钮,并弹出一个警告框,提示Ajax POST失败-数据库不在我的当前笔记本电脑上,当我单击“ HTML浏览器”窗口的获取时,我应该得到错误查询按钮或Qt的获取按钮- 2)而且,每当我单击HTML浏览器的“获取查询”按钮时,它都会显示POST警告,但还会显示额外的POST警告警报框,具体取决于我单击Qt的“获取查询”按钮的次数. -例如,如果我连续五次单击“ Qt的获取查询”按钮,然后单击一次HTML窗口的“获取”按钮,则我会连续收到6条POST失败消息- HTML代码如下所示: Start End AJAX表格的发布方法是这样的: $(document).ready(function(){ // ajaxForm submit $(#ajaxForm).submit(function() { $.ajax({ type: POST, url: heatQuery.php, data: $(this).serialize(), dataType: json, success: function(response) { // update the points for heatmap layer updateHeatMap(response); }, error: function(errorMsg) { alert(Error in Ajax POST); } }); return false; }); }); 最后,调用该函数的Qt代码是这样的: void MainWindow::onButtonClicked() // clicking the button in order to POST { //the QString a is the same ajax post function as declared above QString a = "$(document).ready(function(){$(#ajaxForm).submit(function() {$.ajax({type: POST,url: heatQuery.php,data: $(this).serialize(),dataType: json,success: function(response){updateHeatMap(response);},error: function(errorMsg){alert(Error in Ajax POST);}});return false;});});"; this->view->page()->mainFrame()->evaluateJavaScript(a); } 对这里出什么问题有任何想法吗?谢谢.
经验分享 程序员 微信小程序 职场和发展