페이지로드시 채워지는 webgrid가 있습니다. 이 표에는 클릭 할 때 처리되는 javascript 이벤트가있는 요소가 있습니다. 여기에서는 단순히 사용자를 외부 사이트로 보냅니다. 나는 이것을 컨트롤러에 묶어 두었다. 두 요소 모두 첫 번째 요소에서 작동합니다. 그러나, 목록의 첫 번째 요소 다음에 오는 경우 javascript가 호출되지 않습니다.자바 스크립트 클릭 이벤트가 WebGrid MVC의 첫 번째 요소에서만 작동합니다.
WebGrid :
@grid.GetHtml(tableStyle: "table table-striped table-bordered",
headerStyle: "thead-default",
columns: grid.Columns(
grid.Column("post_tran_a", Model.year_a, canSort: false, format: (item) =>
new HtmlString(Html.CheckBox("post_tran_a", (bool)item.post_tran_a.is_reviewed, new { disabled = "disabled" })
+ " " +
Html.ActionLink((string)item.post_tran_a.month, "PostTransmission", Model.controller, new { report_id = item.post_tran_a.report_id, link = item.post_tran_a.link }, new { @id = "external-link", data_url=Url.Action() })
))))
자바 스크립트 :
$("#external-link").click(function() {
var url = $("#external-link").attr("data-url");
alert(url);
});
이 방법은 내가 다른 솔루션에 열려있어 작동하지 않을 경우
.
나는 다시 가서 이드를 클래스 속성으로 변경했다. 이제 작동합니다. 당신의 도움을 주셔서 감사합니다 – Jared