美好的一天。
当我使用下面的代码时,它会在页面上发送所有表单,而不是我指定的表单。
$('.imagetemp').on('change',function(){
var id = this.id;
var arr = id.split('upload');
var count = arr[1];
var form = '#imagetempform' + count;
$("form").ajaxForm(
...
...
...
请告诉我如何发送一份表格?
答案 0 :(得分:4)
由于form
是变量,您需要更改:
$("form")
要:
$(form)
否则,您引用页面上的所有表单元素,因为包含在引号中的变量不再是变量 - 它是一个字符串,$()
将其解释为jQuery选择器。
有关详细信息,请参阅jQuery's Element Selector ("element")文档。
编辑(来自已编辑的问题):
P.S。:$(表格).ajax()不能正常测试你可以在这里看到http://testwork.ru/10006/template1.php(在图片点击按钮'выбрать'之前)...
这是因为您的表单没有ID。
<form name="imagetempform1" class="..." ... >...</form>
#
用于选择ID。您可以在以下位置添加ID:
<form name="imagetempform1" id="imagetempform1" class="..." ... >...</form>
或者您可以更改选择器以选择名称,而不是:
var form = "[name='imagetempform" + count + "']";
答案 1 :(得分:3)
var form = '#imagetempform' + count;
$("form").ajaxForm(
Here you have assigned the form id in the form variable
so
$("form").ajaxForm( will be
$(form).ajaxForm(
答案 2 :(得分:0)
只需删除双引号:
$(form).ajaxForm(