Javascript根据输入标记提交表单
我有一个如下所示的表格:Javascript根据输入标记提交表单,javascript,php,jquery,html,forms,Javascript,Php,Jquery,Html,Forms,我有一个如下所示的表格: <div> <form id="speed_form" action="/dashboard/speed" method="get"> <select name="speed"> <option value="1">1 Rate</option> <option value="2">2 Rate</option> <option value="3">3 Rate&
<div>
<form id="speed_form" action="/dashboard/speed" method="get">
<select name="speed">
<option value="1">1 Rate</option>
<option value="2">2 Rate</option>
<option value="3">3 Rate</option>
<option value="4">4 Rate</option>
<option value="5">5 Rate</option>
</select>
<input type="hidden" name="123456" />
</form>
</div>
1级
2级
3级
4级
5级
我使用此js代码提交上述表格:
<script type="text/javascript">
$("select[name=speed]").change(function(){
$("#speed_form").submit();
});
</script>
$(“选择[名称=速度]”)。更改(函数(){
$(“#速度表格”).submit();
});
我想向页面/dashboard/speed?speed=name&id=value
发送一个GET
请求。名称被输入
标记隐藏。我应该把选项值
带入GET
方法
你能帮我实现吗?非常感谢 尝试更换:
<input type="hidden" name="123456" value=4 />
作者:
您可以使用
$.ajax
自己创建url和数据,如下所示:
$(function()
{
$('form').on('submit', function(event)
{
var elem = $('input[type="hidden"]');
var data = 'speed=' + $(elem).attr('name') + '&id=' + $(elem).val();
$.ajax(
{
url: "/dashboard/speed",
data = data
});
event.preventDefault();
});
});
像这样替换代码
<div>
<form id="speed_form" action="/dashboard/speed" method="get">
<select name="speed">
<option value="1">1 Rate</option>
<option value="2">2 Rate</option>
<option value="3">3 Rate</option>
<option value="4">4 Rate</option>
<option value="5">5 Rate</option>
</select>
<input type="hidden" name="name" value=123456/>
<input type="hidden" name="id" value=4 />
</form>
</div>
<script type="text/javascript">
$("select[name=speed]").change(function(){
$("input name:id").val($("select[name=speed]").val());
$("#speed_form").submit();
});
</script>
1级
2级
3级
4级
5级
然后像这样更改java脚本
<div>
<form id="speed_form" action="/dashboard/speed" method="get">
<select name="speed">
<option value="1">1 Rate</option>
<option value="2">2 Rate</option>
<option value="3">3 Rate</option>
<option value="4">4 Rate</option>
<option value="5">5 Rate</option>
</select>
<input type="hidden" name="name" value=123456/>
<input type="hidden" name="id" value=4 />
</form>
</div>
<script type="text/javascript">
$("select[name=speed]").change(function(){
$("input name:id").val($("select[name=speed]").val());
$("#speed_form").submit();
});
</script>
$(“选择[名称=速度]”)。更改(函数(){
$(“输入名称:id”).val($($(“选择[名称=速度])).val());
$(“#速度表格”).submit();
});
请查看这些链接。使用class或id属性选择dom。记住,在这种情况下可以使用AJAX 只有函数绑定问题 您需要在$(function()内编写Jquery代码
$(函数()
{
$(“选择[名称=速度]”)。更改(函数(){
$(“#速度表格”).submit();
});
}
如果您遇到任何错误,请回复我在浏览器中安装web devOper工具以查看错误用此代码替换脚本部分。这可能对您有所帮助
<script type="text/javascript">
$("select[name=speed]").change(function(){
this.form.submit();
});
</script>
$(“选择[名称=速度]”)。更改(函数(){
这个.form.submit();
});
1级
2级
3级
4级
5级
//最简单
$(“#速度”).change(函数(){
var值=$(this.val();
$('隐藏').val(值);
$(“#速度表格”).submit();
});
我建议始终分配id没有输入名
id
也可以在类似jQuery(函数(){$(“选择[name=speed]”)中添加javascript代码。更改(函数(){$(“#speed_form”).submit()})
Ajax可用于发送Get或post请求。
<div>
<form id="speed_form" action="/dashboard/speed" method="get">
<select name="speed" id="speed">
<option value="1">1 Rate</option>
<option value="2">2 Rate</option>
<option value="3">3 Rate</option>
<option value="4">4 Rate</option>
<option value="5">5 Rate</option>
</select>
<input type="hidden" name="123456" id="hidden"/>
</form>
</div>
//Most simple
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js"></script>
<script type="text/javascript">
$("#speed").change(function(){
var value = $(this).val();
$('#hidden').val(value);
$("#speed_form").submit();
});
</script>