Javascript-将变量添加到表单提交中
我有一点javascript,可以找到一个现有的id并用一个表单替换它 在该表单中,我希望能够向提交url添加javascript变量。我不确定这是否可能,或者我只是在错误地实现它Javascript-将变量添加到表单提交中,javascript,jquery,html,forms,Javascript,Jquery,Html,Forms,我有一点javascript,可以找到一个现有的id并用一个表单替换它 在该表单中,我希望能够向提交url添加javascript变量。我不确定这是否可能,或者我只是在错误地实现它 $(document).ready(function () { $("#FB_cs_redirectTextBox") .replaceWith('<form class="cf" action="http://test.com/s/search.html?profile=_default&am
$(document).ready(function () {
$("#FB_cs_redirectTextBox")
.replaceWith('<form class="cf" action="http://test.com/s/search.html?profile=_default&collection=general + document.getElementById(' + item-select + ').value" method="get">' +
'<input type="search" placeholder="Search for stuff" name="search" class="searchbox-input" required="">' +
'<select name="item-select" id="item-select" required="">' +
'<option value="" selected="selected">Item type...</option>' +
'<option value="level">item 1</option>' +
'<option value="taste">item 2</option>' +
'<option value="location">item 3</option>' +
'<option value="month">item 4</option>' +
'</select>' +
'<button type="submit" class="btn btn--green searchbox-submit">' +
'Search for items' +
'</button>' +
'</form>');
});
我还想知道这是否可行,如何将select的值添加到url操作中。我是否可以通过对所有选项应用相同的id,然后对该id名称调用document.getElementById来实现这一点
非常感谢大家的帮助 给表单起个名字,然后:
document.form_name.action = 'http://test.com/s/search.html?profile=_default&collection=general' + document.getElementById(' + item-select + ').value;
请确保在加载DOM后执行此操作,否则它将无法工作。为表单命名,然后:
document.form_name.action = 'http://test.com/s/search.html?profile=_default&collection=general' + document.getElementById(' + item-select + ').value;
请确保在加载DOM后执行此操作,否则它将无法工作。替换您的这个 与 只有当'item select'是一个变量但不是,它是一个ID时,才需要放置'and+,所以删除'and+标记。代码起作用替换您的
这个 与 只有当'item select'是一个变量但不是,它是一个ID时,才需要放置'and+,所以删除'and+标记。代码起作用改变这一点
'<form class="cf" action="http://test.com/s/search.html?profile=_default&collection=general + document.getElementById(' + item-select + ').value" method="get">'
“”
对此
'<form class="cf" action="http://test.com/s/search.html?profile=_default&collection=general&search=' + document.getElementById('item-select').value + '" method="get">'
“”
那么JavaScript语法又是正确的了
这些是操作的预期URL
:
http://test.com/s/search.html?profile=_default&collection=general&search=level
http://test.com/s/search.html?profile=_default&collection=general&search=taste
http://test.com/s/search.html?profile=_default&collection=general&search=location
http://test.com/s/search.html?profile=_default&collection=general&search=month
改变这个
'<form class="cf" action="http://test.com/s/search.html?profile=_default&collection=general + document.getElementById(' + item-select + ').value" method="get">'
“”
对此
'<form class="cf" action="http://test.com/s/search.html?profile=_default&collection=general&search=' + document.getElementById('item-select').value + '" method="get">'
“”
那么JavaScript语法又是正确的了
这些是操作的预期URL
:
http://test.com/s/search.html?profile=_default&collection=general&search=level
http://test.com/s/search.html?profile=_default&collection=general&search=taste
http://test.com/s/search.html?profile=_default&collection=general&search=location
http://test.com/s/search.html?profile=_default&collection=general&search=month
名字不是主要问题。您还更改了
document.getElementById
周围的字符串连接,对吗?这才是真正的问题,名字不是主要问题。您还更改了document.getElementById
周围的字符串连接,对吗?这是实际的问题。可能的重复:什么是操作的预期URL之一?类似于http://test.com/s/search.html?profile=_default&collection=generallevel
?哎哟,应该是:然后在此修改变量可能重复:操作的预期URL之一是什么?类似于http://test.com/s/search.html?profile=_default&collection=generallevel
?哎哟,有点漏掉了,应该是:然后在这里修改变量