我有一个动态创建多个表单的页面,每个表单都有一个唯一的“id” 在每个表单中,一个隐藏的输入字段始终具有相同的“id”和“name”
我想要做的是每个表单能够进行ajax(post)调用,我可以这样做,我的问题是从中获取输入字段值..
所以我可以得到
$(document).ready(function() {
var n = $("form").size();
alert('there are ' + n + ' forms');
$('form').submit(function(event){
event.preventDefault();
var formName = $(this).attr('id');
alert(formName);
});
});
所以我要做的是在触发的表单中获取输入字段的值,id保存在var formName
我一直在刺伤,但没有快速到达......
谢谢
西蒙
答案 0 :(得分:1)
将隐藏的元素ID放入find()。并通过将hiddenValue传递给数据来生成.ajax()。
$('form').submit(function(event){
event.preventDefault();
var hiddenValue = $(this).find('#id-of-hidden').val();
});
答案 1 :(得分:0)
你想这样做:
$('form').submit(function(event){
var post_data = $(this).serialize();
var post_to = $(this).attr('action');
$.post(post_to, post_data, function(return_data) {
alert(return_data);
});
return false;
});
您实际上不需要知道表单的ID。您只需使用$(this)
引用它,serialize()
- 函数会处理您要发布的所有值。