Как экспортировать метки из сетки, динамически создаваемой с помощью JavaScript? - PullRequest
0 голосов
/ 30 октября 2019

У меня есть несколько видов сетки на одной странице, некоторые с текстовыми полями, другие с метками / текстом. Метки вычисляются из других значений текстового поля с использованием javaScript и размещаются в виде сетки таким образом. Проблема в том, что этикетки не экспортируются в Excel. Мне интересно, если это потому, что они создаются динамически с javaScript. Тем не менее, мне нужны эти значения для экспорта. Любая помощь приветствуется!

Я снова попробовал привязку данных при клике на экспорт, но не пошел.

protected void export_Click(object sender, EventArgs e)
    {
        Response.ClearContent();
        Response.AppendHeader("content-disposition", "attachment; filename=AvailableFundsCosts.xls");
        Response.ContentType = "application/excel";

        System.IO.StringWriter sw = new System.IO.StringWriter();
        HtmlTextWriter htw = new HtmlTextWriter(sw);

        gridSFS.RenderControl(htw);
        gridTLS.RenderControl(htw);
        gridPCOTotals.RenderControl(htw);
        gridPTA.RenderControl(htw);
        gridPC.RenderControl(htw);
        gridTL.RenderControl(htw);
        gridFinal.RenderControl(htw);


        Response.Write(sw.ToString());
        Response.End();
    }

Вот пример использования javascript в сетке для размещения значения метки в другомчасть сетки:

function calculateGTASemestersOtherActivity()
        {
            var GTASemestersOtherActivity = parseFloat(document.getElementById("cphMain_gridPTA_iTxtAmount_4").value);
            var GTASemesterStipend = parseFloat(document.getElementById("cphMain_gridTLS_iTxtAmount_5").value);

            if(isNaN(GTASemestersOtherActivity))
            {GTASemestersOtherActivity = 0.00;}
            if(isNaN(GTASemesterStipend))
            {GTASemesterStipend = 0.00;}

            var OtherActivityCost = parseFloat(GTASemestersOtherActivity * GTASemesterStipend);

            var cell = document.getElementById("cphMain_gridPC").rows[8].cells;

            cell[1].innerHTML = OtherActivityCost.toLocaleString('en-US', { style: 'currency', currency: 'USD' });
        }

Мне нужны значения меток для экспорта в Excel, а также в текстовые поля.

1 Ответ

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

Необходимо перезагрузить значения в GridView в коде позади. JavaScript не сохраняет значения в сетке напрямую.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...