powered by simpleCommunicator - 2.0.36     © 2025 Programmizd 02
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / вызов функции js из View, куда копать
1 сообщений из 1, страница 1 из 1
вызов функции js из View, куда копать
    #40095184
raven_2008
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
доброе время суток, коллеги!

2 контроллера работают с представлениями, использующими Ajax
каждое имеет свой файл js
вызываемый в представлении

Effectivness.js и Downtime.js

Код: html
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.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
97.
98.
99.
100.
101.
102.
103.
104.
105.
106.
107.
108.
109.
110.
111.
112.
113.
114.
115.
116.
117.
118.
119.
120.
121.
122.
123.
124.
125.
126.
127.
128.
129.
130.
131.
132.
133.
134.
135.
136.
137.
138.
139.
140.
141.
142.
143.
144.
145.
146.
147.
148.
149.
150.
151.
152.
153.
154.
155.
156.
157.
158.
159.
160.
161.
162.
163.
164.
165.
166.
167.
168.
169.
170.
171.
172.
173.
174.
175.
176.
177.
178.
179.
180.
181.
182.
183.
184.
185.
186.
187.
188.
189.
190.
191.
192.
193.
194.
195.
196.
197.
198.
199.
200.
201.
202.
203.
204.
205.
206.
207.
208.
209.
210.
211.
212.
213.
214.
215.
216.
217.
218.
219.
220.
221.
222.
223.
224.
225.
226.
227.
228.
229.
230.
231.
232.
233.
234.
235.
236.
237.
238.
239.
240.
241.
242.
243.
244.
245.
246.
247.
248.
249.
250.
251.
252.
253.
254.
255.
256.
257.
258.
259.
260.
261.
262.
263.
264.
265.
266.
267.
268.
269.
270.
271.
272.
273.
274.
275.
@Scripts.Render("~/bundles/syncfusionjs")
@Styles.Render("~/content/syncfusioncss")

@using Syncfusion.MVC.EJ
@using Syncfusion.EJ
@using Syncfusion.JavaScript.DataVisualization
@model MiraWebTula.Models.LastLineEvents

<div class="container-fluid">

    <script type="text/javascript" src="@Url.Content("~/bower_components/keyboard/dist/js/jquery.keyboard.js")"></script>
    <script type="text/javascript" src="@Url.Content("~/bower_components/keyboard/dist/js/jquery.keyboard.extension-all.min.js")"></script>
    <link href="@Url.Content("~/Content/keyboard.css")" type="text/css" rel="stylesheet" />

    <script type="text/javascript" src="@Url.Content("~/Scripts/app/Effectivness.js")"></script>

    <script type="text/javascript" src="@Url.Content("~/bower_components/jquery-ui/jquery-ui.js")"></script>
    <link href="@Url.Content("~/bower_components/jquery-ui/themes/base/jquery-ui.min.css")" rel="stylesheet" type="text/css" />
    <script src="~/bower_components/Microsoft.jQuery.Unobtrusive.Ajax/jquery.unobtrusive-ajax.js"></script>
    <!-- First, we load Globalize's dependencies (`cldrjs` and its supplemental module). -->
    <script src="~/bower_components/cldrjs/dist/cldr.js"></script>
    <script src="~/bower_components/cldrjs/dist/cldr/event.js"></script>
    <script src="~/bower_components/cldrjs/dist/cldr/supplemental.js"></script>

    <!-- Next, we load Globalize and its modules. -->
    <script src="~/bower_components/globalize/dist/globalize.js"></script>
    <script src="~/bower_components/globalize/dist/globalize/number.js"></script>

    <!-- Load after globalize/number.js -->
    <script src="~/bower_components/globalize/dist/globalize/date.js"></script>
    <script src="~/bower_components/jquery-validation/dist/jquery.validate.js"></script>
    <script src="~/bower_components/jquery-validation-globalize/jquery.validate.globalize.js"></script>
    <script src="~/bower_components/jquery-validation-unobtrusive/jquery.validate.unobtrusive.js"></script>
    <script>
        $("form").validate();
    </script>

    <script>
        $.when(
            $.getJSON("/bower_components/cldr-data/supplemental/likelySubtags.json"),
            $.getJSON("/bower_components/cldr-data/main/ru/numbers.json"),
            $.getJSON("/bower_components/cldr-data/supplemental/numberingSystems.json"),
            $.getJSON("/bower_components/cldr-data/main/ru/ca-gregorian.json"),
            $.getJSON("/bower_components/cldr-data/main/ru/timeZoneNames.json"),
            $.getJSON("/bower_components/cldr-data/supplemental/timeData.json"),
            $.getJSON("/bower_components/cldr-data/supplemental/weekData.json")
        ).then(function () {
            return [].slice.apply(arguments, [0]).map(function (result) {
                return result[0];
            });
        }).then(Globalize.load).then(function () {
            var global = Globalize.locale("ru");
        });

    </script>

    <div class="row">
        <div class="col-md-12">
            <div id="modal"></div>
            <h3 class="page-header">Ввод данных </h3>
        </div>
    </div>

    <div class="row">
        <div class="col-md-4  col-lg-4">
            <div class="panel panel-default">
                <div class="panel-heading">
                    Эффективность по участку <strong> @Model.Sector</strong>
                </div>
                <div class="panel-body">
                    @using (Ajax.BeginForm(new AjaxOptions
                    {
                        HttpMethod = "POST",
                        OnSuccess = "Refresh"
                    }))
                    {
                        <div class="form-inline">
                            <div class="form-group">
                                <label>
                                    Номер плана:
                                </label>
                                

                                @Html.TextBoxFor(m => m.Job, htmlAttributes: new { @class = "form-control", placeholder = "0xxxxx" })
                                @Html.ValidationMessageFor(m => m.Job, "", new { @class = "text-danger" })
                            </div>

                            <input type="hidden" id="SectorId" name="SectorId" value="@Model.SectorId">
                            <input type="hidden" id="Sector" name="Sector" value="@Model.Sector">

                            <div class="form-group">
                                <label>
                                    Смена: 

                                </label>
                                @(Html.EJ().DropDownListFor(m => m.Shift, new Syncfusion.JavaScript.Models.DropDownListProperties()
                                    {
                                        DataSource = ViewData["shift"],
                                        WatermarkText = "Смена",
                                        DropDownListFields = new Syncfusion.JavaScript.Models.DropDownListFields()
                                        {
                                            Text = "Name",
                                            Id = "Id",
                                            Value = "Id"
                                        }

                                    }
                                                                                                                                                                                                                          ))
                                @Html.ValidationMessageFor(m => m.Shift)
                            </div>

                            <div class="form-group">
                                <label>
                                    Линия: 

                                </label>
                                @(Html.EJ().DropDownListFor(m => m.LineId, new Syncfusion.JavaScript.Models.DropDownListProperties()
                                    {
                                        DataSource = ViewData["line"],
                                        WatermarkText = "Линия",
                                        DropDownListFields = new Syncfusion.JavaScript.Models.DropDownListFields()
                                        {
                                            Text = "LineName",
                                            Id = "id",
                                            Value = "id"
                                        },
                                        EnableFilterSearch = true,
                                        EnableIncrementalSearch = true,
                                        CaseSensitiveSearch = false

                                    }
                                                                                                                                                                                                                  ))
                                @Html.ValidationMessageFor(m => m.Line, "", new { @class = "text-danger" })
                            </div>
                            <div class="form-group">
                                <label>
                                    Событие:
                                </label>
                                @(Html.EJ().DropDownListFor(m => m.EventId, new Syncfusion.JavaScript.Models.DropDownListProperties()
                                    {
                                        DataSource = ViewData["stat"],
                                        WatermarkText = "Событие",
                                        DropDownListFields = new Syncfusion.JavaScript.Models.DropDownListFields()
                                        {
                                            Text = "LineStatusName",
                                            Id = "id",
                                            Value = "id"
                                        }//,
                                         //  EnablePersistence = true

                                    }
                                                                                                                                                                                                          ))
                                @Html.ValidationMessageFor(m => m.EventName, "", new { @class = "text-danger" })
                            </div>
                            <div class="form-group">
                                <label>Зарегистрировать</label>
                                <button type="submit" class="btn btn-primary e-in-wrap" value="Refresh" name="Refresh">Регистрация</button>
                            </div>
                        </div>
                    }
                </div>
            </div>

        </div>
        <div class="col-md-8  col-lg-8">
            <div class="panel panel-default">
                <div class="panel-heading">
                    Инструкция по вводу данных.
                </div>
                <div class="panel-body">

                    <ol>
             
                        <li>
                            Для регистрации события "Работа" требуется ...
                        </li>
                    </ol>
                </div>
            </div>
        </div>
    </div>
    <div class="row">
        <div class="col-md-12">
            <div class="panel panel-default">
                @(Html.EJ().Button("Refresh").Text("обновить").ClientSideEvents(d => d.Click("Refresh")))
                @{
                    @(Html.EJ().Grid<object>("FlatGrid1")
                                                                                                                                        .Datasource(ds => ds.Json(ViewData["event"])).Locale("ru-RU").Columns(col =>
                                                                                                                                        {
                                                                                                                                            col.Field("Id").HeaderText("Id").Width(20).Add();
                                                                                                                                            col.Field("Job").HeaderText("План").Width(50).Add();
                                                                                                                                            col.Field("Sector").Visible(false).Add();
                                                                                                                                            col.Field("SectorId").Visible(false).Add();
                                                                                                                                            col.Field("Line").HeaderText("Линия").Width(60).Add();
                                                                                                                                            col.Field("LineId").Visible(false).Add();
                                                                                                                                            col.Field("Status").HeaderText("Статус").Width(40).TextAlign(TextAlign.Center).CssClass("customcss").Add();
                                                                                                                                            col.Field("Shift").Visible(false).Add();
                                                                                                                                            col.Field("StartDate").HeaderText("Начало").Format("{0:dd/MM/yyyy H:mm}").Width(60).Add();
                                                                                                                                            col.Field("EndDate").HeaderText("Окончание").Format("{0:dd/MM/yyyy H:mm}").Width(60).Add();
                                                                                                                                            col.Field("EventName").HeaderText("Событие").Width(60).Add();
                                                                                                                                            col.Field("EventId").Visible(false).Add();
                                                                                                                                            col.HeaderText("Упр.").Commands(command =>
                                                                                                                                            {
                                                                                                                                                command.Type("STOP")
                                                                                                                                                       .ButtonOptions(new Syncfusion.JavaScript.Models.ButtonProperties()
                                                                                                                                                       {
                                                                                                                                                           Text = "Стоп",
                                                                                                                                                           Click = "stop"

                                                                                                                                                       }).Add();
                                                                                                                                            }).Width(40).Add();
                                                                                                                                        }
                                                                                                                                    )
                                                                                                                                    .ClientSideEvents(eve => eve.QueryCellInfo("querycellinfo"))
                    )
                }

            </div>
        </div>
    </div>

</div>

<script>
    $("#Job")
        .keyboard({
            layout: "custom",
            customLayout: {
                'default': [
                    '7 8 9',
                    '4 5 6',
                    '1 2 3',
                    '0 {accept} {bksp}']
            },
            autoAccept: true,
            css: {
                // input & preview
                input: "form-control input-sm",
                // keyboard container
                container: "center-block dropdown-menu", // jumbotron
                // default state
                buttonDefault: "btn btn-default",
                // hovered button
                buttonHover: "btn-primary",
                // Action keys (e.g. Accept, Cancel, Tab, etc);
                // this replaces "actionClass" option
                buttonAction: "active",
                // used when disabling the decimal button {dec}
                // when a decimal exists in the input area
                buttonDisabled: "disabled"
            }
        })
        .addTyping();
</script>

<script>
    function querycellinfo(args) {
        if (args.column.field == "Status") {
            if (args.data.Status == true) {
                $(args.cell).css("backgroundColor", "#32CD32");
            }
            else {
                $(args.cell).css("backgroundColor", "#DC143C");
            }
        }
    }/*custom css applied to the row */
</script>


@section Scripts {

    <script>
        $("form").validate();
    </script>
}


файл Effectivness.js содержит функцию
Код: javascript
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
function Refresh(args) {
    var param = 0;
    $.ajax({
        type: "post",
        url: "/Effectivness/GetJsonGridData",
        data: { 'data': param },
        async: false,
        success: function (data) {
            $("#FlatGrid1").ejGrid("dataSource", ej.parseJSON(data));
          //  $('input[checked ="checked"]').closest(".customcss").removeClass("customcss").addClass("customcss1");
        }
    });
}



различия только в наименованиях компонентов.
но. все нормально работает только в одном из представлений
во втором,
когда я нажимаю на кнопку "Регистрировать" - запись успешно добавляется в обработчике контроллера post
но вызова функции не происходит.
хотя при нажатии "обновить" - все обновляется

что еще может влиять на вызов js?
куда копать?

заранее спасибо
...
Рейтинг: 0 / 0
1 сообщений из 1, страница 1 из 1
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / вызов функции js из View, куда копать
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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