Jquery遍历

时间:2009-06-25 06:07:40

标签: jquery modal-dialog

我正在使用JQuery来显示模式对话框。该对话框有一个文件上传控件和上传按钮。它还包含两个用于保存和取消的按钮。

我需要将文件上传控件设为强制控件。我能够遍历文件控件并获取路径 $(本).parent()的兄弟姐妹()儿童()得到(1).value的。;并在点击上传按钮时显示错误消息。但我想显示保存按钮显示的相同错误。

当我创建按钮以及

这样的对话框时,需要从保存按钮遍历的帮助
$("#dialog").dialog({
    bgiframe: true,
    autoOpen: false,
    height: 500,
    width: 600,
    modal: true,            
    buttons: {
        Cancel: function() {                    
        $(this).dialog('close');                    
        },
        'Save': function() {}
    }
});

1 个答案:

答案 0 :(得分:1)

在您的代码示例中,取消和保存处理程序中的this似乎是#dialog元素,因此您可以从那里遍历所有子项。然而,使用选择器而不是遍历会更加健壮。像$(this).find(':file').val()这样的东西应该有效。

使用选择器会使代码更加健壮,因为即使您在对话框中添加其他元素,它也会继续工作。正如一些评论者所指出的那样,为文件上传控件提供一个唯一的ID会使用简单的选择器更容易地选择它。如果您需要使用代码来处理具有上载字段的不同ID的多个对话框,则可以使用类或其他特定选择器(如上面提到的:file选择器)与特定上下文的.find方法结合使用。

为了进一步帮助你,我们可能需要更多的上下文,比如#dialog元素的内容。也许提到定义.dialog方法的jQuery插件会有所帮助。