jquery.forms插件 - 将表单发送到asp.net中的webmethod

时间:2011-01-17 15:28:03

标签: asp.net jquery-forms-plugin

我正在尝试使用jquery.forms插件将表单发送到asp.net页面中的web方法(主要原因是我还需要发送文件)。

但是,我无法使其工作 - 它会一直返回整个页面。

我使用以下客户端代码:

<script type="text/javascript">
    var ajaxUploadOptions = {
        beforeSubmit: UploadFormValidate,  // pre-submit callback 
        success: FormUploadSuccess,  // post-submit callback 
        error: FormUploadFailure,

        url: "Default.aspx/UploadFiles",         // override for form's 'action' attribute 
        type: "POST",        // 'get' or 'post', override for form's 'method' attribute 
        dataType: "json",        // 'xml', 'script', or 'json' (expected server response type) 
        contentType: "application/json; charset=utf-8",            
    };

    function FormUploadSuccess(response, statusText, xhr, jqForm) {
        alert(response);
    };
    function FormUploadFailure(XMLHttpRequest, textStatus, errorThrown) {            
        alert(errorThrown);
    }

    $("form[id $= 'form1']").ajaxForm(ajaxUploadOptions);

  });
</script>

asp.net方法的代码只是为了返回任何东西:

 [WebMethod]
    public static string UploadFiles()
    {
        return "Test";            
    }

我在web.config中注册了ScriptModule(也验证了调用常规jquery的$ .ajax以确保该方法可用)。

任何建议将不胜感激。 谢谢!

1 个答案:

答案 0 :(得分:0)

似乎我没有仔细阅读文档/代码。发现在发送文件时,表单插件使用iframe并定期提交。