我的页面上有几个表单。每个表单都根据数据库中的ID命名。
<form id="spam-X" method="post">
所以在我的页面上,如果有3条评论,则有3种形式。
<form id="spam-1" method="post">...</form> <form id="spam-2" method="post">...</form> <form id="spam-3" method="post">...</form>
现在我想根据提交的表单运行一组函数。所以我在jquery中提交了函数...
$("form#[id^='spam']").submit(function() {
现在问题是,我想获取被点击的这个特定表单中的内容,所以我假设我将需要尾随ID(spam-1,spam-2,spam-3)....我如何获得这个价值?
答案 0 :(得分:3)
只需使用:
$("form#[id^='spam']").submit(function() {
var formThatWasSubmitted = this;
}
以该格式获取特定输入的值:
var email = this.email.value;
答案 1 :(得分:3)
您不需要通过它的特定ID来引用表单,因为绑定到提交处理程序的函数将被调用,而'this'是表单的DOM元素。您可以使用text()函数获取表单的文本内容:
$("form#[id^='spam']").submit(function() {
// 'this' is the dom element that is being submitted
var text = $(this).text();
});
答案 2 :(得分:2)
尝试在$(this).attr('id')
处理程序中使用submit
。
答案 3 :(得分:0)
您可以使用函数内的$(this)来访问由点击激活的表单。
然后使用类似$(this).find("SELECTOR").val()
的内容缩小到您需要信息的字段。您需要将 SELECTOR 替换为该表单中字段的名称或类选择器。