javascript - 将 javascript 数据放入表单中

标签 javascript jquery forms

我有以下 javascript 代码:

game.bind('gameover', function(seconds) {
    setTimeout(function() {
      var rank = game.getRank(seconds);
      scorecard.find('.time').text(seconds + ' sec');
      scorecard.find('.rank').text(rank[0]);
      scorecard.find('.byline').text(rank[1]);
      ...more code

在下面的 div 中显示了此数据(因此 js 脚本正在运行):

<div class="inner">
  <h3>Nice job! Your time:</h3>
  <h1 class="wobble time"><!-- 15 seconds --></h1>
  <h2 class="rank"><!-- Friendly Mallard --></h2>
  <h3 class="byline"><!-- (That's pretty good) --></h3>
</div>

现在我想把结果也放在一个表单中,这样我就可以将它发布到数据库 (mysql) 中。所以我添加了一个表单并将其放在同一个 div 中:

<form id="form" action="updatescore.php" method="post">
  <input type="text" id="time" name="time" value="" />
  <input type="text" id="rank" name="rank" value="" />
  <input type="text" id="byline" name="byline" value="" />
</form>

现在在 JS 中我复制了这些行(例如 scorecard.find('.time').text(seconds + 'sec');)并将其更改为查找 id ,所以 . 变成了 # 并在 js 中传递它,例如:

scorecard.find('.time').text(seconds + ' sec');
scorecard.find('#time').text(seconds + ' sec');
etc

所以我认为这应该可行,但表单输入保持为空。我做错了什么?

亲切的问候,

莫里斯

最佳答案

如果您只是想通过 updatescore.php 将 js 变量移动到您的数据库中,您根本不需要使用表单!您可以使用 AJAX 实现。

  var scoreData = {
       time : time,
       rank : rank[0],
       byline : rank[1]
  };
  $.post('updatescore.php', scoreData); //done!

关于javascript - 将 javascript 数据放入表单中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11836594/

相关文章:

javascript - 如何在 jquery 确认为定义后运行内联脚本

javascript - 获取 li 中的 aria-checked 属性

javascript - Gmail 分区 - 它们的变化速度有多快?

javascript - 滚动时如何淡入窗口底部的div?

javascript - 当我执行 document.loginform.submit() 时,无法在 Javascript 中手动提交表单

javascript - 如何使用 click() 继续下一个表单元素并隐藏当前元素

javascript - 使用缓冲区复制 fs.createReadStream

javascript - 对 drupal 模块的 Ajax 调用不起作用

javascript - 使用javascript将json字符串转换为dd-mm-yy格式的日期

jQuery for html table 根据其他单元格值更改单元格内容