동적으로 링크를 생성하는 데 문제가있는 MVC/jquery를 처음 사용합니다.자바 스크립트에서 MVC 작업 링크 생성
텍스트 상자에 사용자가 입력하고 추가 버튼을 조회 할 경우, 우리는 다음과 같은 자바 스크립트 호출 : 그래서
addItem: function (button) {
var text = this.$text.val();
var $newCell = $('<td>');
$newCell.text(text);
var $hidden = $('<input type="hidden" />');
$hidden.attr('name', this.name);
$hidden.val(text);
$newCell.append($hidden);
$newCell.append('</td>');
var $newLinkCell = $('<td>');
var $newLink = $('<a href="#" id="newLink">EPA Action Link</a>');
var $newLinkTarget = '<%: @Html.ActionLink("EPA Action Link", "EPARedirect", new { EPAId = "' + text + '" }, new { target = "_blank" }) %>';
$newLink.attr("href", $newLinkTarget);
$newLinkCell.append($newLinkTarget);
$newLinkCell.append('</td>');
var $html = $('<tr>');
$html.append($newCell);
$html.append($newLinkCell);
$html.append('</tr>');
this.$table.append($html);
this.initItem($newCell);
this.$text.val('');
}
무엇을 내가 뭘하는 테이블의 위치를, 2 개 개의 세포로 새 행을 추가를 : 데이터를 표시 할 수있는 왼쪽과 해당 데이터와의 연결을 매개 변수로 표시 할 수있는 권한.
기존 항목의 경우 cshtml 파일에 동일한 ActionLink가 있습니다 (단, EPAId는 "@item"이라는 jquery 변수를 통해 작성됩니다).
어쨌든 필자는 추가 기능에서 동일한 유형의 링크를 동적으로 빌드하는 방법을 알아 내려고 노력했습니다. 내가 얻는 것은 $ newLinkTarget의 문자 그대로의 텍스트입니다. 이 말이 맞는 것 같아요. 서버의 jquery 렌더링을 통해 눌려지지 않고 있습니다.
여기 완전히 잘못된 경로입니까?
또는 그가 입력하는 텍스트 상자에'data-url'과 같은 추가 'data- *'속성이있을 수 있으며 그 값은 서버 측에서 생성 된 URL입니다 –