javascript - 如何从同一个表单中得到值(value)结果?

标签 javascript php html

如何从此表单中获取有值(value)的结果?

<form name="forma" method="post" action="index.php"  id="dunja" >
    <p>
        Ime: <input id="ime" type="text" name="txtIme" value="" />
    </p>
    <p>
        Email: <input id="mail" type="text" name="txtEmail" value="" />
    </p>
    <p>
        <input type="submit" name="btnProsledi" value="Prosledi"  />
    </p>
</form>

并且,JS 是:

function sakupiPodatke(form){
    var delovi = [];
    var elementi = form.elements;

    for(var i=0; i<elementi.length; i++){
        var element = elementi[i];
        var naziv = encodeURIComponent(element.name);
        var vrednost = encodeURIComponent(element.value);

        delovi.push(naziv + "=" + vrednost);
    }

    return delovi.join("&");
}

var teloZahteva = sakupiPodatke(document.forma);

console.log(teloZahteva);

PHP 文件也很简单:

<?php

$ime = $_POST["txtIme"];
$email = $_POST["txtEmail"];

?>

所以......我的问题是如何从console.log中的JS读取变量“teloZahteva”?

最佳答案

您的代码在页面首次加载时运行,在用户有机会填写表单之前。因此它将在控制台中显示空值。

将代码放入用户单击提交按钮时运行的事件监听器中。

document.getElementById("dunja").addEventListener("submit", function(e) {
  e.preventDefault();
  var teloZahteva = sakupiPodatke(e.target);
  console.log(teloZahteva);
});

function sakupiPodatke(form) {
  var delovi = [];
  var elementi = form.elements;

  for (var i = 0; i < elementi.length; i++) {
    var element = elementi[i];
    var naziv = encodeURIComponent(element.name);
    var vrednost = encodeURIComponent(element.value);

    delovi.push(naziv + "=" + vrednost);
  }

  return delovi.join("&");
}
<form name="forma" method="post" action="index.php" id="dunja">
  <p>
    Ime: <input id="ime" type="text" name="txtIme" value="" />
  </p>
  <p>
    Email: <input id="mail" type="text" name="txtEmail" value="" />
  </p>
  <p>
    <input type="submit" name="btnProsledi" value="Prosledi" />
  </p>
</form>

这会在控制台中显示表单值,而不是将表单发送到 PHP。

关于javascript - 如何从同一个表单中得到值(value)结果?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59865173/

相关文章:

javascript - 如何检查页面中所有ajax函数是否加载完成?

php - 获取错误消息 - 调用未定义的方法 mysqli_result::fetch_all()

javascript - 为什么这个post方法没有被检索到?

html - 如何将一个 div 附加到另一个的底部,以便内容可以滚动

javascript - 如何将函数绑定(bind)到 Shadow DOM 内的元素?

javascript - HTML5 Canvas 碰撞检测 "globalCompositeOperation"性能

javascript - 如何在 Slick carousel 上制作黑色背景过渡?

javascript - 如何使用 JQuery 设置同级元素的 HTML

php - Laravel 框架中原生 php 调用函数

jquery - 单击某个链接以显示图像集合中的某个图像?