使用jQuery的“提交”-是否有一种方法来传递额外的参数到表单?我不打算用Ajax这样做-这是正常的,刷新典型的表单提交。
$('#submit').click(function () {
$('#event').submit(function () {
data: {
form['attendees'] = $('#attendance').sortable('toArray').toString();
});
});
使用jQuery的“提交”-是否有一种方法来传递额外的参数到表单?我不打算用Ajax这样做-这是正常的,刷新典型的表单提交。
$('#submit').click(function () {
$('#event').submit(function () {
data: {
form['attendees'] = $('#attendance').sortable('toArray').toString();
});
});
当前回答
您不需要在单击提交按钮时绑定提交事件,只需绑定提交事件,无论如何触发它,它都会捕获提交事件。
认为你想要的是提交排序,就像你会通过ajax。试着这样做:
var form = $('#event').submit(function () {
$.each($('#attendance').sortable('toArray'),function(i, value){
$("<input>").attr({
'type':'hidden',
'name':'attendace['+i+']'
}).val(value).appendTo(form);
});
});
其他回答
在您的情况下,只需向表单动态添加另一个隐藏字段就足够了。
var input = $("<input>").attr("type", "hidden").val("Bla");
$('#form').append($(input));
类似的答案,但我只是想让它成为一个简单/快速的测试。
变量输入 = $(“<input>”) .attr(“name”, “mydata”).val(“go Rafa!”); $('#easy_test').append(input); <script src=“https://ajax.googleapis.com/ajax/libs/jquery/1.6.3/jquery.min.js”></script> <表单 id=“easy_test”> </form>
您不需要在单击提交按钮时绑定提交事件,只需绑定提交事件,无论如何触发它,它都会捕获提交事件。
认为你想要的是提交排序,就像你会通过ajax。试着这样做:
var form = $('#event').submit(function () {
$.each($('#attendance').sortable('toArray'),function(i, value){
$("<input>").attr({
'type':'hidden',
'name':'attendace['+i+']'
}).val(value).appendTo(form);
});
});
下面这个例子为我做到了:
var input = $("<input>")
.attr("type", "hidden")
.attr("name", "mydata").val("bla");
$('#form1').append(input);
是基于Daff的答案,但添加了名称属性,让它显示在形式集合和改变值VAL 还检查了表单的ID (form1在我的情况下)
使用Firefox firebug检查元素是否被插入。
隐藏的元素会被返回到表单集合中,只有只读字段会被丢弃。
米歇尔
你甚至可以用这个。对我来说很好
$("#registerform").attr("action", "register.php?btnsubmit=Save")
$('#registerform').submit();
这将提交btnsubmit =Save as GET值到register.php表单。