我有一个使用“get”方法发布结果的表单。我想知道如何在提交之前为这些结果添加一些额外的值。
到目前为止我所做的是重载提交功能,所以我可以连接我的附加字符串 我希望将表单结果传递到目标网址。
在常规提交时,目标网址获得如下结果:
..dest url?txtName=e&txtAge=r&gender=mail&select=1
我试图做的是在这些结果中添加另一个字符串
..dest url?txtName=e&txtAge=r&gender=mail&select=1|myStringResult
我已经重载了提交
function overLoadSubmit()
{
window.addEventListener('submit', newSubmit, true);
HTMLFormElement.prototype._submit = HTMLFormElement.prototype.submit;
HTMLFormElement.prototype.submit = newSubmit;
}
原始提交是在newSubmit()
之后调用的,这就是我要追加字符串的位置。
function newSubmit()
{
var myForm = document.forms[0];
var s = "|myStringResult";
// here is where i would like to append s ,
// but i can't figure out how to reference the form results
// or how to add it to the original submit
}
我也尝试添加隐藏的输入控件
<input type="hidden" id="_body" value="getValues();"/>
因为myResultString非常长,实际上是一个完整的html文档
function getValues()
{
var _doc = document.childNodes[1].innerHTML;
return '|' + _doc;
}
这似乎不起作用。
答案 0 :(得分:3)
为什么不在表单中添加隐藏字段呢?
<input type="hidden" name="myhiddenfield" value="myStringResult">
提交表单时,该值将附加到URL。