Представьте Частичное Представление Используя jQuery в ASP.NET MVC

Вероятно, вам следует заменить

INSERT INTO [LIST].[STG].[' + @NAME + '] (' + @CNAME + ', [Inserted_Date])
SELECT ' + @CNAME + ', GETDATE()
FROM #TEMP2

на

INSERT INTO [LIST].[STG].[' + @NAME + '] (' + @CNAME + ', [Inserted_Date])
SELECT ' + REPLACE(REPLACE(REPLACE(CAST(@CNAME AS NVARCHAR(MAX)), CHAR(13), ''), CHAR(10), ''), ' ','') + ', GETDATE()
FROM #TEMP2
219
задан Custodio 7 March 2016 в 00:18
поделиться

4 ответа

Для этого я использовал загрузку ajax:

$('#user_content').load('@Url.Action("UserDetails","User")');
149
ответ дан 23 November 2019 в 04:10
поделиться

Если вам нужно сослаться на динамически генерируемое значение, вы также можете добавить параметры строки запроса после @ URL.Action, например, так:

    var id = $(this).attr('id');
    var value = $(this).attr('value');
    $('#user_content').load('@Url.Action("UserDetails","User")?Param1=' + id + "&Param2=" + value);


    public ActionResult Details( int id, string value )
    {
        var model = GetFooModel();
        if (Request.IsAjaxRequest())
        {
            return PartialView( "UserDetails", model );
        }
        return View(model);
    }
0
ответ дан 23 November 2019 в 04:10
поделиться

Вам нужно будет создать действие на вашем контроллере, которое возвращает отрисованный результат частичного представления или элемента управления UserDetails.

9
ответ дан 23 November 2019 в 04:10
поделиться

Вы не можете визуализировать частичное представление, используя только jQuery. Однако вы можете вызвать метод (действие), который будет отображать частичное представление для вас и добавить его на страницу с помощью jQuery / AJAX. Ниже у нас есть обработчик нажатия кнопки, который загружает URL-адрес для действия из атрибута данных на кнопке и запускает запрос GET для замены DIV, содержащегося в частичном представлении, на обновленное содержимое.

$('.js-reload-details').on('click', function(evt) {
    evt.preventDefault();
    evt.stopPropagation();

    var $detailDiv = $('#detailsDiv'),
        url = $(this).data('url');

    $.get(url, function(data) {
        $detailDiv.replaceWith(data);         
    });
});

где пользователь Контроллер имеет действие с именем details, которое выполняет:

public ActionResult Details( int id )
{
    var model = ...get user from db using id...

    return PartialView( "UserDetails", model );
}

Предполагается, что ваше частичное представление является контейнером с идентификатором detailsDiv , так что вы просто заменяете всю вещь содержимым результата вызова.

Кнопка родительского просмотра

 <button data-url='@Url.Action("details","user", new { id = Model.ID } )'
         class="js-reload-details">Reload</button>

Пользователь - это имя контроллера, а детали - это имя действия в @ Url.Action () . Частичное представление UserDetails

<div id="detailsDiv">
    <!-- ...content... -->
</div>
283
ответ дан 23 November 2019 в 04:10
поделиться
Другие вопросы по тегам:

Похожие вопросы: