1

我正在使用 ajax jquery 提交表单。我想上传一张图片和其他字段。

是否可以更改我目前的脚本来完成它,或者我需要重做所有事情:-

我的jQuery是: -

 <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.0/jquery.min.js"></script>

<script type="text/javascript">
    $(function () {
        $(".submit").click(function () {
            var article_title = $("#article_title").val();
            var article_body = $("#article_body").val();

            var dataString = 'article_title=' + article_title + '&article_body=' + article_body;

            if (article_title == '' || article_body == '') {
                $('.success').fadeOut(200).hide();
                $('.error').fadeOut(200).show();
            } else {
                $.ajax({
                    type: "POST",
                    url: "<?php echo site_url().'/main/submit_article'?>",
                    data: dataString,
                    success: function () {
                        //$('.success').fadeIn(200).show();
                        $('#article_form')[0].reset();
                        $('.error').fadeOut(200).hide();
                    }

                });
            }

            return false;
        });
    });
</script>

我的 HTML 表单:-

<form name="article_form" id="article_form" class="article_form" method="POST" action="">
    <input type="text" name="article_title" id="article_title" placeholder="Title for your article" /> <!--<input type="file" name="pic" />-->
    <br>
    <textarea rows="12" name="article_body" id="article_body" placeholder="Tell your story"></textarea>
    <br>
    <input type="submit" name="submit" id="submit" value="Post" class="submit"/>
</form>
4

3 回答 3

2

为什么不使用jQuery.form插件。

这个插件允许有效地处理文件上传检查这里

用于清除字段

$(':input','#myform').not(':button, :submit, :reset, :hidden')
.val('')
.removeAttr('checked')
.removeAttr('selected');
于 2013-02-25T06:27:11.580 回答
1

enctype="multipart/form-data"添加到您的表单元素中。

于 2013-02-27T10:01:53.033 回答
0

让我在这里为您节省时间,尝试:

上传http://www.uploadify.com/

或者你可以尝试:

Jquery 表单malsup.com/jquery/form/

如果您需要进度条,多次上传,拖放 https://github.com/valums/file-uploader

使用这些工具和插件并减轻压力。除非你有更好的主意,否则不要重新发明轮子。

于 2013-02-25T09:48:36.307 回答