2009-08-20 4 views
2

많은 요소가있는 요소가있는 목록을 표시하는 페이지가 있습니다. 각 요소에는 부울 속성이 있으며 Enabled 및 장애 상태.ASP.NET MVC Ajax : 클릭하여 Ajax.ActionLink 자체를 업데이트하는 방법

각 목록 항목에 대한 링크를 사용자에게 제공해야하며 링크 텍스트는 반대 상태로 표시되어야합니다 (항목이 사용 설정되면 링크 텍스트에 '사용 안함'이 표시되어야 함).

사용자가 사용 안 함 링크를 클릭하면 항목의 해당 링크 텍스트가 '사용'으로 변경되어야하며 반대의 경우도 마찬가지입니다.

내 질문은, 그래서, 각 클릭에 대한 ActionLink 자체의 텍스트 만 전체 목록을 다시로드하지 싶습니다

:

그것이 가능한 업데이트 할 단지 ActionLink 자체 사용자가 링크를 클릭, 또는이 사용자 지정 자바 스크립트를 사용하여 처리합니까?

답변

1

대부분의 오버로드에서 익명 클래스를 마지막 매개 변수로 새로 추가하여 HTML 특성을 "a"태그에 추가 할 수 있습니다. 이처럼 쓸 수있는 내 머리 위로 떨어져

다음

Html.ActionLink("Name", "Action", "Controller", new { @class = 'updateId' }); 

(당신은 클래스를 통해 것이 바람직 할 것이다 ID로이 작업을 수행 할 수 있습니다 - 다만 독특한를 사용하지 않을 경우 클래스 이름을 사용하면 여러 항목을 업데이트하지 않아도됩니다.

그런 다음 javascript를 사용하여 "updateId"클래스에 액세스하고 내부 HTML을 변경할 수 있습니다. jQuery를의 경우

:

$("a.updateId").html("NewName"); 
0

이는 업데이트 할 요소 내에 포함 된 사용자 지정 사용자 컨트롤을 사용하여 수행 할 수 있습니다. A writeup of the solution can be found here. 사용자 지정 클라이언트 측 스크립팅은 필요하지 않습니다.