Кнопка загрузки не отображает сообщение - PullRequest
1 голос
/ 15 октября 2019

Я использую сладкое оповещение наряду с c # asp.net. Для моей кнопки «загрузить и удалить», когда пользователь щелкнул по кнопке, удалось отобразить «сладкое» предупреждение. Для кнопки загрузки я хотел, чтобы код проверял, был ли загруженный пользователем файл пустым или нет. Если оно было пустым, то появляется сообщение («Файл не загружен») и если оно не было пустым («Файл был успешно загружен»).

   <input type="file" name="file" id="file" />
    <input type="submit" value="Upload" id="fileUpload" />
 <script>
                $('#fileUpload').click(function (e) {
                    if ($('#fileUpload').val() === "Upload") {
                        Swal.fire({
                            title: 'Nothing',
                            text: 'No file selected',
                            type: 'error',
                            confirmButtonText: 'Again!!',
                            timer: 4000

                        })                     
                    }
                    if ($('fileUpload').val() !== "Upload") {
                        Swal.fire({
                            title: 'Wait awhile...',
                            text: 'File will be uploaded shortly',
                            type: 'success',
                            confirmButtonText: 'Okay, cool',
                            timer: 4000
                        })
                    }

                });
            </script>

Однако, когда я нажимаю кнопку загрузки, нииз этих всплывающих сообщений отображаются. Что я пропустил? Я обновил свой код. Теперь, когда я нажимаю кнопку загрузки, отображается только второе сообщение. Я хочу, чтобы кнопка загрузки была нажата, чтобы проверить наличиефайла, и если да, будет отображаться второе сообщение, в противном случае будет отображаться первое сообщение.

Ответы [ 3 ]

0 голосов
/ 16 октября 2019

Вам необходимо проверить, есть ли на входе какой-либо файл.

Попробуйте это:

$('#fileUpload').click(function (e) {
  if (this.files.length > 0)
  {
    swal({
      title: 'Wait awhile...',
      text: 'File will be uploaded shortly',
      type: 'success',
      confirmButtonText: 'Okay, cool',
      timer: 4000
    });

  }
  else
  {
    swal({
          title: 'Nothing',
          text: 'No file selected',
          type: 'error',
          confirmButtonText: 'Again!!',
          timer: 4000
        });
  }
});
0 голосов
/ 17 октября 2019
  <script>
            $('#fileUpload').click(function (e) {
                if ($('#file').val() === "") {
                    Swal.fire({
                        title: 'Nothing',
                        text: 'No file selected',
                        type: 'error',
                        confirmButtonText: 'Again!!',
                        timer: 4000

                    })
                }
                else {
                    Swal.fire({
                        title: 'Wait awhile...',
                        text: 'File will be uploaded shortly',
                        type: 'success',
                        confirmButtonText: 'Okay, cool',
                        timer: 4000
                    })
                }

            });
        </script>

Так что мне удалось заставить его работать с этим блоком кода. Я пытался глотать без огня, но всплывающего сообщения все еще не было. Теперь я обеспокоен тем, что, когда файл не выбран, сообщение всплывает, но ненадолго, как секунда, не так, как я хотел, чтобы таймер был

0 голосов
/ 16 октября 2019
$('#fileUpload').val() // always get 'Upload'

Используйте document.getElementById('file').files или $('#file')[0].files, чтобы проверить, выбран ли какой-либо файл.

...