Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / ASP.NET MVC & JQuery / 11 сообщений из 11, страница 1 из 1
12.05.2015, 15:08
    #38956568
bald56rus
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ASP.NET MVC & JQuery
всем привет.
подскажите пож. почему не работает клик по кнопке
представление:
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
@model  IEnumerable<CSCP.Core.Domain.AttachedFiles.AttachedFileListModel>
@{
    ViewBag.Title = "Index";
    if (Request.IsAjaxRequest())
    {
        Layout = null;
    }
}
<div id="tabAttachment">
    @Ajax.ActionLink("Update", "Index", "Attachment", new { operationId = ViewBag.OperationId },
        new AjaxOptions { UpdateTargetId = "tabAttachment" }, new { @id = "ActionLink", @role = "presentation", @style = "visibility:hidden;" })
    
    <div class="form-group">
        <div class="col-md-3">
            <input type="file" name="upload" id="uploadFile" class="btn btn-default" />
        </div>
        <div class="col-md-2">
            <input type="submit" id="submit" value="Сохранить" class="btn btn-default" data-operationid="@ViewBag.OperationId" />
        </div>
    </div>
    @Html.Partial("_AttachmentFilesList", Model)
</div>


jQuery
Код: javascript
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
$(document).ready(function () {
    $('#submit').click(function (e) {
        e.preventDefault();
        var files = document.getElementById('uploadFile').files;
        if (files.length > 0) {
            if (window.FormData !== undefined) {
                var data = new FormData();
                for (var x = 0; x < files.length; x++) {
                    data.append("file" + x, files[x]);
                }

                $.ajax({
                    type: "POST",
                    url: "/Attachment/AttachFile?operationId=" + $('#submit').attr('data-operationId'),
                    contentType: false,
                    processData: false,
                    data: data,
                    success: function () {
                        $("#ActionLink").click();
                    },
                    error: function () {
                        $("#ActionLink").click();
                    }
                });
            } else {
                alert("Браузер не поддерживает загрузку файлов HTML5!");
            }
        }
    });
});


в упор не пойму почему не работает:(. заранее спасибо
...
Рейтинг: 0 / 0
12.05.2015, 15:12
    #38956578
Axeleron
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ASP.NET MVC & JQuery
bald56rus,
Код: javascript
1.
2.
3.
$('#submit').on("click", function() {
.......
});
...
Рейтинг: 0 / 0
12.05.2015, 15:21
    #38956591
Konst_One
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ASP.NET MVC & JQuery
а гдже собственно сама FORM ?
...
Рейтинг: 0 / 0
12.05.2015, 15:37
    #38956619
Axeleron
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ASP.NET MVC & JQuery
Konst_Oneа гдже собственно сама FORM ?
...
Рейтинг: 0 / 0
12.05.2015, 16:08
    #38956679
Konst_One
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ASP.NET MVC & JQuery
AxeleronKonst_Oneа гдже собственно сама FORM ?

что смешного то? ТС юзает FormData() а неудосужился посмотреть как оно работает (видно юзает бразуер не тот):

http://true-coder.ru/php/ispolzovanie-obekta-formdata-dlya-zagruzki-fajlov.html
...
Рейтинг: 0 / 0
12.05.2015, 16:25
    #38956697
Axeleron
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ASP.NET MVC & JQuery
Konst_One,
Смешно то, что я это проглядел. Есть вариант, что TC привел вью EditTemplat'а, а значит форма может быть объявлена в мастер-вью. Но я почему-то уверен, что это не EditorTemplate, а потому проблема как раз в отсутствии формы.
...
Рейтинг: 0 / 0
12.05.2015, 18:16
    #38956803
bald56rus
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ASP.NET MVC & JQuery
Axeleron, Konst_One спасибо. но самое интересное что без "формы" работало.а потом перестало
...
Рейтинг: 0 / 0
12.05.2015, 18:43
    #38956809
Axeleron
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ASP.NET MVC & JQuery
bald56rus,

А можно узнать, а зачем вообще использовать type="submit"?
...
Рейтинг: 0 / 0
13.05.2015, 06:15
    #38956961
bald56rus
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ASP.NET MVC & JQuery
Axeleron,
нашел пример в инете, немного подстроил под свои нужды(добавил классы) и прочее по мелочи и в итоге вот что получилось:).
...
Рейтинг: 0 / 0
13.05.2015, 06:33
    #38956968
bald56rus
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ASP.NET MVC & JQuery
Axeleron а не подскажите почему может не выполняться действие "click" после публикации на сервер.
запускаю отладку работает, делаю публикацию не работает.
ниже код представления на которое выводится представление.
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
@model CSCP.Web.Models.Operations.OperationDetailModel

@{
    ViewBag.Title = "Details";
    ViewBag.OperationId = Model.Id;
    ViewBag.ReturnUrl = Request.Url.PathAndQuery;
}

@Html.Partial("_OperationDetail",Model)

<ul class="nav nav-tabs">
    <li class="active">@Ajax.ActionLink("Программы", "Index", "Program", new { operationId = Model.Id }, new AjaxOptions { UpdateTargetId = "Result" }, new { @role = "presentation" })</li>
    @if(User.IsInRole("Admin"))
    {
        <li>@Ajax.ActionLink("Акты", "Index", "Act", new { operationId = Model.Id }, new AjaxOptions { UpdateTargetId = "Result" }, new { @role = "presentation" })</li>
    }    
    <li>@Ajax.ActionLink("Файлы", "Index", "Attachment", new { operationId = Model.Id }, new AjaxOptions { UpdateTargetId = "Result" }, new { @role = "presentation" })</li>
</ul>

<div id="Result">
    @Html.Action("Index", "Program", new { operationId = Model.Id })
</div>
@Html.ActionLink("К списку операций", "Index", "Operation")


код действия вынес в js файл и подключаю через bundle.
...
Рейтинг: 0 / 0
13.05.2015, 12:43
    #38957336
bald56rus
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ASP.NET MVC & JQuery
всем спасибо.тему можно закрывать
...
Рейтинг: 0 / 0
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / ASP.NET MVC & JQuery / 11 сообщений из 11, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]