javascript - 如何有效地将许多字段添加到我用 JavaScript 创建的表单中?

标签 javascript html forms

我有一个新页面新表单,我想连接到一些现有的服务器端内容。现在我有这段代码可以工作,但它有点笨拙:

// make a form
var OrderStatusSearchQueryForm = document.createElement("form");

// make first input 
var Operation = document.createElement("input");
Operation.name="Operation";
Operation.value="Search";
OrderStatusSearchQueryForm.appendChild(Operation);

// make second input
var SearchFieldValue = document.createElement("input");
SearchFieldValue.name="SearchFieldValue";
SearchFieldValue.value=document.formonpage.searchString.value
OrderStatusSearchQueryForm.appendChild(SearchFieldValue);

// not shown, many more inputs like the above

// set a few important values from the form on the page

OrderStatusSearchQueryForm.submit();

我想知道是否可以编写一个只接受几个参数并执行相同操作的函数。该函数允许我用以下内容替换上面的内容:

var OrderStatusSearchQueryForm = document.createElement("form");
stakmagic("Operation", "Search", OrderStatusSearchQueryForm);
stakmagic("SearchFieldValue", document.formonpage.searchString.value, OrderStatusSearchQueryForm);
OrderStatusSearchQueryForm.submit();

最佳答案

不知道你在问什么。您可能已经回答了您自己的问题。但如果您想要该功能,请执行以下操作:

function stakmagic(name, value, form) {
    var Input = document.createElement("input");
    Input.name = name;
    Input.value = value;
    form.appendChild(Input);
}

关于javascript - 如何有效地将许多字段添加到我用 JavaScript 创建的表单中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8184897/

相关文章:

javascript - 对齐 div 内的按钮和按钮之间的跨度

html - 如何使用 Bootstrap 在具有两个行跨度的表上旋转文本

javascript - HTML5 视频在 Safari 上寻找 'ended' 上的视频中间位置

javascript - map 存储中的 map

javascript - 禁用滚动、动画,然后再次启用滚动

php - 将sql生成的php表中的字段发送到另一个php表单

php - MySQL:以多个ID的形式传递单行ID

javascript - 在 $.ajax 调用后删除特定输入

html - Bootstrap 4 Alpha 6 Column 占据全宽

drupal - 表单提交后自定义重定向