如何使用 Wt 将一些值发布到另一个页面?

Posted

技术标签:

【中文标题】如何使用 Wt 将一些值发布到另一个页面?【英文标题】:How can I POST some values to another page with Wt? 【发布时间】:2013-12-23 17:12:48 【问题描述】:

我有一个指向另一个页面的 WANchor,它改变了内部路径。我还有一个函数internalPathChange()internalPathChanged() 做出反应,并根据内部路径调用正确的函数。

如何使用 POST 将值从第一页传递到第二页?

【问题讨论】:

嘿Neyuh,好问题。为了使它更好,发布一个保留相关位的 Wt 代码的框架概述,以便 Pieter 可以更新答案以显示示例将如何应用于您的帖子!最良好的祝愿。 【参考方案1】:

您应该使用小部件。 Wt 不知道 post 和不同 html 页面的概念。

可以在文件 HangmanGame.C 中找到一个很好的示例here。 您创建自己的小部件,并在这些小部件的构造函数中指定您需要的值。然后他们使用Wt::WStackedWidget 只显示新的“页面”。

他们使用以下代码:

void HangmanGame::handleInternalPath(const std::string &internalPath)

  if (session_.login().loggedIn()) 
    if (internalPath == "/play")
      showGame();
    else if (internalPath == "/highscores")
      showHighScores();
    else
      WApplication::instance()->setInternalPath("/play",  true);
  


void HangmanGame::showHighScores()

  if (!scores_)
    scores_ = new HighScoresWidget(&session_, mainStack_);

  mainStack_->setCurrentWidget(scores_);
  scores_->update();

  backToGameAnchor_->removeStyleClass("selected-link");
  scoresAnchor_->addStyleClass("selected-link");


void HangmanGame::showGame()

  if (!game_) 
    game_ = new HangmanWidget(session_.userName(), mainStack_);
    game_->scoreUpdated().connect(&session_, &Session::addToScore);
  

  mainStack_->setCurrentWidget(game_);

  backToGameAnchor_->addStyleClass("selected-link");
  scoresAnchor_->removeStyleClass("selected-link");

因此,在本例中,HighScoresWidgetHangmanWidget 是您要发布值的“页面”。

【讨论】:

以上是关于如何使用 Wt 将一些值发布到另一个页面?的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 jquery ajax 将选中复选框的值发送到另一个页面

如何使用 HTML 表单将 JavaScript 值传递到另一个 PHP 页面?

如何使用会话将值从一个php页面传递到另一个页面

如何将 Dojo Data 网格单元格值重定向到另一个页面?

Titanium - 如何将视图发送到另一个页面?

如何使用 Wt 启动和运行 Restful API