مرجع تخصصی برنامه نویسان

بزرگترین انجمن برنامه نویسان فارسی زبان

پیدا کردن فایل تکراری در td

دوشنبه, 13 اسفند 1397 11:52

پیدا کردن فایل تکراری در td

سلام

من کدزیر را نوشته ام

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
</head>
<body>
<table>
    <tr>
    <td><input type="file" name="file"></td>
    </tr>
    <tr>
    <td><input type="file" name="file"></td>
    </tr>
     <tr>
    <td><input type="file" name="file"></td>
    </tr>
    </table>
    <br/>
    <br/>
    <button id="check">Check</button>
</body>
<script src="jquery-3.3.1.min.js"></script>
</html>

چگونه  می توانم وقتی کاربر روی دکمه check کلیک کردم اگر کاربر فایل تکراری وارد کرده بود(از نظر نام) پیام بدهد که فایل تکراری وجود دارد

باتشکر

ﺳﻪ شنبه, 14 اسفند 1397 10:31

با سلام خدمت شما دوست عزیز

از کد زیر میتونین استفاده کنین :


$("#check").click(function (e) { 
    var files = $('input[type="file"]');
    var fileNames = [];
    var duplicates = [];
    $.each(files, function (index, value) { 
        if(value.files.length !== 0){
            fileNames.push(value.files[0].name);
        }
    });

    duplicates =  fileNames.filter((item, index) => fileNames.indexOf(item) != index);
    if(duplicates.length !==0) {
        alert ('فایل تکراری وجود دارد');
    }
});

ابتدا یه ارایه تعریف میکنیم برای دریافت تمام input های مربوط به file

ارایه ی دیگه ای رو برای استخراج نام های مربوط به فایل ها در نظر میگیریم ( البته میشه این کار رو نکرد و نام فایل رو از ارایه ی مربوط به فایل ها دریافت کرد )

ارایه ی بعدی برای استخراج نام های تکراری هستش

در متد each نام فایل هارو استخراج میکنیم و پس از اون ، با متد filter ، نام های تکراری رو از ارایه ی مربوط به نام فایل ها استخراج میکنیم

در نهایت در صورت وجود داشتن نام تکراری ، یک Alert به نمایش در خواهد آمد

اگر سوالی براتون پیش اومد مطرح کنین

کسانی که از این پست تشکر کرده اند : iran,

ارسال پاسخ برای این تاپیک

ارسال پاسخ مخصوص اعضا سایت می باشد ! میتوانید با حساب کاربری خود وارد سایت شده یا ثبت نام کنید