我有几个在文件上传后动态生成的 div。每个文件上传都会以这种格式创建一个 div:
<div id="uploadifive-fileupload-queue" class="uploadifive-queue">
<div class="uploadifive-queue-item complete" id="uploadifive-fileupload-file-0">
<div class="inputs">
<input type="hidden" name="image_id" value="0">
<input type="text" name="alt-text">
<input type="submit" name="image_data_submit" value="Submit" />
</div>
</div>
</div>
每个上传的项目都会将 uploadifive-queue-item 类的 id 递增到 uploadifive-fileupload-file-0、uploadifive-fileupload-file-1、uploadifive-fileupload-file-2 等。
我从响应中动态填充隐藏的 image_id,因此每个隐藏的 image_id 字段将具有与我存储在数据库中的 image_id 对应的不同数值。这看起来像:
'onUploadComplete' : function(file, data) {
$('input[name=image_id]:last').val(data);
}
我正在尝试用一些文本填写替代文本输入字段,然后在单击提交按钮时,它通过 ajax 将命令发送到数据库,并在数据库中更新 image_id 匹配的替代文本字段。
问题是我不知道如何使提交按钮仅提交同一 div 容器中的 image_id 和 alt-text。每个 div 都有一个带有递增数字的唯一 ID,但我不知道如何选择它。我该怎么做?
基本上,如果uploadifive-fileupload-file-3
提交了按钮,我只希望uploadifive-fileupload-file-3中的image_id字段通过ajax提交。
这是我目前拥有 jQuery ajax 的方式:
$("button[name=image_data_submit]").click(function(){
$.ajax({
url: './update_image/',
type: "POST",
data: {
image_id: $("input[name=image_id]").val(),
alt_text: $("input[name=alt_texted]").val()
},
success: function(response){
console.log(response);
}
});
});
我会很感激任何帮助。一整天都被困在这个问题上:/