Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/474.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 Yii2:在导航到表单中的另一个选项卡时自动保存表单_Javascript_Jquery_Forms_Yii2 - Fatal编程技术网

Javascript Yii2:在导航到表单中的另一个选项卡时自动保存表单

Javascript Yii2:在导航到表单中的另一个选项卡时自动保存表单,javascript,jquery,forms,yii2,Javascript,Jquery,Forms,Yii2,我想说,当选择另一个选项卡时,我要提交每个选项卡的内容(表单值)。这样,用户就可以在选项卡之间导航,而不必重新加载整个表单。即使部分填充到数据库中,也会保存这些值 我认为这可以通过使用jquery或javascript来实现,比如单击选项卡将同时模拟单击保存按钮 我也尝试过这个代码,但它不工作?选项卡的id为#ui-id-3,保存按钮的id为#save1 $('#ui-id-3')。单击(函数(){ $('#save1')。单击(); 返回false; }); 我做错了什么 建议修改: &l

我想说,当选择另一个选项卡时,我要提交每个选项卡的内容(表单值)。这样,用户就可以在选项卡之间导航,而不必重新加载整个表单。即使部分填充到数据库中,也会保存这些值

我认为这可以通过使用jquery或javascript来实现,比如单击选项卡将同时模拟单击保存按钮

我也尝试过这个代码,但它不工作?选项卡的id为#ui-id-3,保存按钮的id为#save1


$('#ui-id-3')。单击(函数(){
$('#save1')。单击();
返回false;
});
我做错了什么

建议修改:

<script src="//ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script>
   $(function() {
  $("#ui-id-3").click(function(){
    autoSave();
    return false;
  });
});

function autoSave(){
      var formData = $("#w0").serialize();
      $.ajax({
        type:"POST",
        url:"/hospitalerp/web/index.php?r=daily-ward-entry%2Fcreate",
        data:formData,//only input
        success: function(response){
            $( "#recordID" ).val( response);  
        }
    });


  }
    </script>

$(函数(){
$(“#ui-id-3”)。单击(函数(){
自动保存();
返回false;
});
});
函数autoSave(){
var formData=$(“#w0”).serialize();
$.ajax({
类型:“POST”,
url:“/hospitalerp/web/index.php?r=每日病房条目%2Fcreate”,
数据:formData,//仅输入
成功:功能(响应){
$(“#recordID”).val(应答);
}
});
}

这是一个简单的解决方案,但您必须根据需要进行修改

第一步:

使用for ID字段创建一个隐藏字段,我们将在其中存储数据库记录ID。您可以
name
/
ID
作为recordID输入,这样我们就可以在jQuery代码中引用它

<input type="hidden" name="recordID" id="recordID" value="0" />

您好Saquibahmad-我使用的是Yii2框架,默认id和操作设置如下-
没问题,您可以使用框架生成的名称,正如您所看到的,只有三个参考,id隐藏字段表单操作和自动保存页面这些都可以很容易地获得-我已经粘贴了修改过的代码,但它似乎不起作用。奇怪的您收到了什么错误,请使用firebug检查您的ajax请求是否指向正确的url,放置一个警报框或使用firbug验证您是否在ajax调用之前在formData变量中获取数据,然后让我知道我在firebug中没有收到任何错误。如何创建alterbox?
<input type="hidden" name="recordID" id="recordID" value="0" />