Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/237.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 PHP-如何将值从上一个文本框传递到同一页面上新创建的行?_Javascript_Php_Jquery_Html - Fatal编程技术网

Javascript PHP-如何将值从上一个文本框传递到同一页面上新创建的行?

Javascript PHP-如何将值从上一个文本框传递到同一页面上新创建的行?,javascript,php,jquery,html,Javascript,Php,Jquery,Html,我计划用一个表格来注册新老师(见下图)。教师可以分配到不同的班级教授不同的科目 当通过单击按钮(+)创建新行时,是否可以将值从第1行的textbox(AAAA)传递到第2行的textbox 我不希望用户在某些文本框中键入相同的值时感到痛苦——这些值将是相同的。只有[Subject-Teached]和[Class-Teached]列可能不同,因此我希望在创建每一新行时将这些列留空 我的代码如下: 视图列表 姓名(首字母) 用户名 密码 角色 指定的班级 授课科目 课堂教学 提交 重置 $

我计划用一个表格来注册新老师(见下图)。教师可以分配到不同的班级教授不同的科目

当通过单击按钮(+)创建新行时,是否可以将值从第1行的textbox(AAAA)传递到第2行的textbox

我不希望用户在某些文本框中键入相同的值时感到痛苦——这些值将是相同的。只有[Subject-Teached]和[Class-Teached]列可能不同,因此我希望在创建每一新行时将这些列留空

我的代码如下:



视图列表

姓名(首字母) 用户名 密码 角色 指定的班级 授课科目 课堂教学 提交 重置 $(文档).ready(函数(){ $(文档)。在('单击','添加',函数()上){ var html=''; html+=''; html+=''; html+=''; html+=''; html+='选择…管理员窗体MasterStaff'; html+=“选择…”; html+=“选择…”; html+=“选择…”; html+=''; $(“#staff_table”).append(html); }); $(文档)。在('单击','删除',函数()上){ $(this).closest('tr').remove(); }); $(“#插入表格”)。在('submit',函数(事件){ event.preventDefault(); var错误=“”; $('.initials')。每个(函数(){ var计数=1; if($(this.val()='') { 错误=“请输入所需信息”

”; 返回false; } 计数=计数+1; }); $('.user_name')。每个(函数(){ var计数=1; if($(this.val()='') { 错误=“请输入所需信息”

”; 返回false; } 计数=计数+1; }); $('.password')。每个(函数(){ var计数=1; if($(this.val()='') { 错误=“请输入所需信息”

”; 返回false; } 计数=计数+1; }); $('.role')。每个(函数(){ var计数=1; if($(this.val()='') { 错误=“请输入所需信息”

”; 返回false; } 计数=计数+1; }); $('.class_assigned')。每个(函数(){ var计数=1; if($(this.val()='') { 返回true; } 计数=计数+1; }); $('.subject_-teached')。每个(函数(){ var计数=1; if($(this.val()='') { 错误=“请输入所需信息”

”; 返回false; } 计数=计数+1; }); $('.class_-teached')。每个(函数(){ var计数=1; if($(this.val()='') { 错误=“请输入所需信息”

”; 返回false; } 计数=计数+1; }); var form_data=$(this).serialize(); 如果(错误=“”) { $.ajax({ url:“staff_insert.php”, 方法:“张贴”, 数据:表格数据, 成功:功能(数据) { 如果(数据=='ok') { $(“#staff_table”).find(“tr:gt(0)”.remove(); $('#error').html('保存员工详细信息'); } } }); } 其他的 { $('#error').html(''+error+''); } }); });
某些字段未填充,因为此处无法检索服务器端的数据。Bu您可以看到
角色
列的示例

在代码段中查找此部分:

  // Here is were you can do the conditional and copying part
  var last_row_role_sel_val = $('#staff_table tr:last td:nth-child(4) select option:selected').val();
  var last_row_role_sel_html = $('#staff_table tr:last td:nth-child(4) select option:selected').html();
  console.log('last_row_role_sel_val',last_row_role_sel_val);
  console.log('last_row_role_sel_html',last_row_role_sel_html);
以及更换零件

if (last_row_role_sel_val!=undefined && last_row_role_sel_val!="") {
  html += '<td><select name="role[]" class="form-control role"><option value="'+last_row_role_sel_val+'">'+last_row_role_sel_html+'</option></select></td>';
} else {
...


视图列表

姓名(首字母) 用户名 密码 角色 指定的班级 授课科目 课堂教学 + 提交 重置
在表单提交过程中,您的意思是什么?代码片段仅适用于语言(javascript),因此您应该像
code
一样放置代码,而不是代码片段。这在某种程度上也适用于你的问题,因为你必须问自己复制过程应该在哪里进行,在(PHP)或客户端(javascript/jquery)。@clearshot66,不!不在表格上提交。在新的一排。单击绿色(加号)按钮时。@Sanxofon,谢谢,我已经更正了代码片段。在提交之前,我希望复制过程在客户端进行。您可以使用jquery clone复制包含其值的行并附加,然后清空复制行中不需要值的文本框。这太棒了!它起作用了。然而,你认为我能做些什么来让其他人变得更强大?我真的需要这些。谢谢我在想:如果我有前五个输入(姓名、用户名、密码、角色和类分配)分别留下。。。(不是行的一部分),我如何让该用户在表中显示其他两列(主题教学和课堂教学)的行数?您也可以这样做。。。我已经更新了前5个字段的代码片段。哇@桑克索丰,你真是个天才!我可以拥抱你吗?非常感谢你。多么完美的解决方案!我希望我能放弃投票权——在我能做到这一点之前,我需要更多的声誉。