4

我已经为此努力了几个小时,希望有人能提供帮助。当文件上传到 dropzone 框中时,我正在尝试获取行 ID 或表单 ID。我有多个带有多个放置区框的表格行。

这是我表中的示例行:

<table class="docs" id="show">      
    <tr class="doc" id="*Need_This*">
        <td>
            <div class="file_upload drop">
                <form class="dropzone clickable" id="*Or_Need_This*">
                </form>
            </div>
        </td>
    </tr>
</table>

这是我的jQuery:

<script type="text/javascript">
$(document).ready(function(){
     $(".dropzone").dropzone({ 
        paramName: 'photos',
        url: "post.php",
        dictDefaultMessage: "Drag or Click",
        clickable: true,
        enqueueForUpload: true,
        init: function() {
            var id = $(this).closest('tr').attr('id');
            this.on("success", function(file) { alert(id); });
          }
    });
});
</script>

现在它返回未定义。我需要获取 id,以便我可以将 css 更改附加到行上的其他元素。任何帮助是极大的赞赏!

4

2 回答 2

4

this在您的情况下是指 Dropzone 实例,而不是元素本身!如果您需要访问 dropzone 的实际元素,请使用dropzone.element.

所以你可以这样做:var id = $(this.element).etc...

希望有帮助。

于 2013-06-24T17:40:30.153 回答
2

在文档中,您可以阅读:

获取服务器响应作为第二个参数

试试这个:

this.on("success", function(file,rep) {
     alert(file);
     alert(rep); //The response
});
于 2013-06-26T19:39:11.380 回答