0

jqueryuploadifyプラグインを使用してファイル制御IDをサーバー側に渡す方法。

 $('#myFileControl').uploadify({
        'swf': 'uploadify-v3.1/uploadify.swf',
        'uploader': 'uplodify.ashx',
        'buttonImage': 'uploadify-v3.1/choose.png',
        'method': 'post',
        'formData': { 'icontype': 'notSet','fileControlID':$(this).attr("id")},//pass id
        'onUploadStart': function (file) {
            $('#myFileControl').uploadify('settings', 'formData', { 'icontype': $("#icontype").val() });
        },
        'width': 129,
        'height': 30,
        'sizeLimit': 5120000,
        'fileTypeExts': '*.jpg;*.png;*.gif',
        'fileTypeDesc': 'Web Image Files (.JPG, .PNG, .GIF)',
        'auto': false
    });


<input type="file" name="myfile" id="myFileControl">

サーバー側は「fileControlID」値を常にnullで取得します。

4

3 に答える 3

0
<body>
<form id="form1" runat="server">
<div>
    <input type="text" id="a" name="a" />
    <input type="file" name="myfile" id="myFileId" class="bbbbb">
    <input type="file" name="bbb" id="aaa" class="bbbbb">
    <input type="button" id="c" value="qqq" onclick="checkImport()" />
</div>
</form>
<script type="text/javascript" src="jquery.min.js"></script>
<script type="text/javascript" src="uploadify-v3.1/jquery.uploadify-3.1.js"></script>
<script type="text/javascript">
    $(function () {
        $('.bbbbb').each(function () {
            var $iconUpload = $(this);
            $iconUpload.uploadify({
                'swf': 'uploadify-v3.1/uploadify.swf',
                'uploader': 'uplodify.ashx',
                'buttonImage': 'uploadify-v3.1/choose.png',
                'method': 'post',
                'formData': { 'icontype': 'notSet', 'fileID': $iconUpload.attr("id") },
                'onUploadStart': function (file) {
                    $iconUpload.uploadify('settings', 'formData', { 'icontype': $("#a").val() });
                },
                'width': 129,
                'height': 30,
                'sizeLimit': 5120000,
                'fileTypeExts': '*.jpg;*.png;*.gif',
                'fileTypeDesc': 'Web Image Files (.JPG, .PNG, .GIF)',
                'auto': false
            });
        });

    });
    function checkImport() {
        $('#myFileId,#aaa').uploadify('upload');
        // $('#myFileId').uploadifyUpload();
        return true;

    }

</script>

于 2012-11-12T04:54:20.603 に答える
0

あなたmyFileControlはasp.netサーバーコントロールではありません。したがって、直接見つけることはできません。

ただし、次のようにファイルを受け取ることができます。

    HttpPostedFile fileToUpload = context.Request.Files["myFileControl"];
    string pathToSave = HttpContext.Current.Server.MapPath("~/Files/")
                        + fileToUpload.FileName;
    fileToUpload.SaveAs(pathToSave);
于 2012-11-12T04:59:00.277 に答える
0

runat = "server"を、サーバーコントロールになるのと同じコントロールに追加できます。

<input type="file" runat="server" name="myfile" id="myFileControl">
于 2012-11-12T07:12:31.787 に答える