Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/73.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 将值附加到表单_Javascript_Jquery_Forms - Fatal编程技术网

Javascript 将值附加到表单

Javascript 将值附加到表单,javascript,jquery,forms,Javascript,Jquery,Forms,我试图从表单中获取值并将其附加到表单中,然后将该值作为参数传递 <form id="myForm"> <input type="text" id="name" name="name" placeholder="Fullname"> <input type="text" id="phone" name="phone" placeholder="Phone"> </form> <script> var myform = docu

我试图从表单中获取值并将其附加到表单中,然后将该值作为参数传递

<form id="myForm">
   <input type="text" id="name" name="name" placeholder="Fullname">
   <input type="text" id="phone" name="phone" placeholder="Phone">
</form>
<script>
var myform = document.getElementById('myForm');
var form = new FormData(myform);
// form will have name and phone
form.append("url", window.location.href);

$.ajax(settings).done(function (response) {
   if (response.success) {
      // Only do something if the response data has success key.
   }
});});
</script>
脚本

$(document).ready(function() {
$('#buttonClick').on('click', 'button',function firstCall(){

var form = new FormData();
form.append("name", "test");
form.append("phone", "2245201905");
form.append("url", "this_url");
var settings = {
  "async": true,
  "crossDomain": true,
  "url": "url_path",
  "method": "POST",
  "processData": false,
  "contentType": false,
  "mimeType": "multipart/form-data",
  "data": form
}

$.ajax(settings).done(function (response) {
  console.log(response);
});});
});
HTML

<form method="post" id="formSample">
 <div class="form-group">
      <label for="name">Name</label>
      <input type="text" id="name" placeholder="Fullname">
 </div>
 <div class="form-group">
      <label for="phone">phone</label>
      <input type="number" name="phone" placeholder="number">
 </div>
 <div id="buttonClick">
 <button >Submit</button></div>
此外,点击按钮时,我无法传递数据,因为我已发出警报,但我没有我的代码输入功能

注意:我还没有在url部分工作

form.append("name", "(document.getElementById('name').value");
您正在此处追加一个字符串。只需拆下“


此外,您可能希望更仔细地了解anonymous,并在javascript中创建一个FormData,其值来自实际HTML,您可以将该表单作为参数传递给表单数据

<form id="myForm">
   <input type="text" id="name" name="name" placeholder="Fullname">
   <input type="text" id="phone" name="phone" placeholder="Phone">
</form>
<script>
var myform = document.getElementById('myForm');
var form = new FormData(myform);
// form will have name and phone
form.append("url", window.location.href);

$.ajax(settings).done(function (response) {
   if (response.success) {
      // Only do something if the response data has success key.
   }
});});
</script>

var myform=document.getElementById('myform');
var form=新表单数据(myform);
//表单将包含姓名和电话
append(“url”,window.location.href);
$.ajax(设置).done(函数(响应){
if(response.success){
//仅当响应数据具有成功键时才执行操作。
}
});});

实际上,只需获取整个表单并将其传递给,就可以简化操作。不过,您应该为输入设置名称

函数第一次调用(e){
e、 预防默认值();
var htmlForm=document.getElementById('formSample');
var form=新的FormData(htmlForm);
格式。附加(“url”、“本url”);
//执行ajax请求
form.forEach((e,i)=>{console.log(i,e);});
}
$(文档).ready(函数(){
//如果需要在其他地方重用命名函数,则可以使用该函数
$(“#buttonClick”)。在('click','button',firstCall)上;
});

名称
电话

提交
是的,谢谢..这很有效..当我做出API响应时我还有另一个疑问,我只想在响应为真时显示此消息..有什么指导吗?@raulxbox无需感谢我。只需向上投票并接受即可。请:我做了,但他们说你可以在2分钟后向上投票答案..我会这样做。我如何将当前页面url传递给formt汉克斯:我只想在response=true时显示这个表单,所以我知道我可以不显示,然后显示块,但这是一个好的做法吗?
var form=FormData(myform);
必须是
var form=new FormData(myform)
对吗?是的,这真的很简单。但是你在哪里进行ajax调用?而不是console.log对吗?你可以保留你所做的部分这是什么意思//不要使用命名函数这里的第三个参数是回调,在你的情况下,你可以使用匿名函数而不是命名函数(你不需要给它命名为firstCall)好的,但是我有一个athorapi调用,所以我想我必须在这里使用函数名
<form id="myForm">
   <input type="text" id="name" name="name" placeholder="Fullname">
   <input type="text" id="phone" name="phone" placeholder="Phone">
</form>
<script>
var myform = document.getElementById('myForm');
var form = new FormData(myform);
// form will have name and phone
form.append("url", window.location.href);

$.ajax(settings).done(function (response) {
   if (response.success) {
      // Only do something if the response data has success key.
   }
});});
</script>