передать значение базы данных в качестве параметра в функцию Javascript, используя jTemplates в ASP.NET? - PullRequest
0 голосов
/ 29 января 2011

Как передать значение базы данных в качестве параметра в функцию Javascript при использовании jTemplates + jQuery в ASP.NET?

<td>
    <a href="#" title="Click to edit" onclick="AddReturnPopUP($T.record.ITReturnID);">
    {formatJSONDate($T.record.AssesmentStartYear)}
</td>

Ребята, есть идеи по этому поводу?

@ Дейв: Я видел ваш пост, он великолепен, но мне просто нужно передать определенный идентификатор функции javascript - AddReturnPopUP (param) - что я не могу сделать. Размещение кода:

<script id="jTemplate" type="text/html">
                <table border="1" cellpadding="3" cellspacing="2" class="mGrid">
                    <thead>
                        <tr>
                            <th>
                                Assesment Start Year
                            </th>
                            <th>
                                Assesment End Year
                            </th>
                            <th>
                                Returned Income
                            </th>
                            <th>
                                Tax Paid
                            </th>
                            <th>
                                Last Update
                            </th>
                        </tr>
                    </thead>
                    <tbody>
                        {#foreach $T.d as record}
                        <tr class="{#cycle values=['','alt']}">
                            <td>
                                <a href="#" title="Click to edit" onclick="AddReturnPopUP($T.record.ITReturnID);">
                                                {formatJSONDate($T.record.AssesmentStartYear)}
                            </td>
                            <td>
                                {formatJSONDate($T.record.AssesmentEndYear)}
                            </td>
                            <td>
                                {$T.record.ReturnedIncome}
                            </td>
                            <td>
                                {$T.record.TaxPaid}
                            </td>
                            <td>
                                {formatJSONDate($T.record.LastUpdate)}
                            </td>
                        </tr>
                        {#/for}
                    </tbody>
                </table>
                </script>

Настройка jTemplate:

function PopulateReturns()
    {
        var param = {clientId: qs};
        var data = JSON.stringify(param);
        $.ajax({
                type: "POST",
                url: "EditClient.aspx/GetReturns",
                data: data,
                contentType: "application/json; charset=utf-8",
                dataType: "json",
                success: function success(data) {
                                     $('#placeHolder').setTemplate($("#jTemplate").html());
                                     $('#placeHolder').processTemplate(data);
                },
                error: function (xhr, status, e) {
                    //var err = JSON.parse(xhr.responseText); $("#placeHolder").html("Error:" + err.Message);  
                }
            });
    }

Мне нужно передать значение $T.record.ITReturnID в качестве параметра в функцию Javascript - AddNewReturn(Id), которая в настоящий момент выдает исключение: $T не определено Пожалуйста, дайте мне знать, если вам нужно больше деталей.

Ответы [ 2 ]

1 голос
/ 29 января 2011

Если вы еще не видели, у меня есть полный пример использования ASP.NET, jQuery и jTemplates, чтобы сделать что-то подобное: http://encosia.com/2008/06/26/use-jquery-and-aspnet-ajax-to-build-a-client-side-repeater/

Если это не помогаетОбновите ваш вопрос с более подробной информацией.Нам нужно увидеть больше кода вашего шаблона, JavaScript, который вы используете для визуализации шаблона, и больше подробностей о структуре данных, которую вы пытаетесь визуализировать.

Стоит отметить, если вы начинаете сну, я бы рекомендовал использовать шаблоны jQuery вместо jTemplates.jTemplates были великолепны, но шаблоны jQuery гораздо более активно поддерживаются / разрабатываются.

edit:

Измените свой атрибут onclick следующим образом:

<a href="#" title="Click to edit" onclick="AddReturnPopUP({$T.record.ITReturnID});">

Это должно правильно ввести значение ITReturnID.

0 голосов
/ 30 января 2011

Просто передайте это: onclick="AddReturnPopUP('{$T.record.ITReturnID}');" Функция js будет работать правильно!

...