Я пытаюсь получить значение параметра из моего ActionLink, чтобы отправить его по вызову ajax. Мой скрипт выглядит так:
$("a.studentName").on("click", function () {
var linkID = this.id;
var theProp = $("linkID").attr("href");
alert(linkID + "" + theProp);
$.ajax({
type: "GET",
url: "/Controller/Action",
data: { "data": linkID },
dataType: "html",
success: function (data) {
$("theTimes").html(data);
}
});
});
@Ajax.ActionLink(stdFName, "Action", "Controller", new { studentNumber = stdNum }, null, new { @class = "studentName", id = "linkNo" + appendId.ToString() }); @:
Что отображает html, который выглядит так:
<a id="linkNo1" class="studentName" href="/Controller/Action?studentNumber=172" data-ajax="true">Gary</a>
Ive попробовал тестирование следующим образом:
var theProp = $("linkID").attr("href");
alert(linkID + "" + theProp);
но я получаю значение id, а не значение параметра url. Можете ли вы помочь мне получить доступ к значению параметра? Спасибо за любую помощь с этим!
Глядя на свой код и то, что вы хотите сделать, я бы предложил сначала убедиться, что вы понимаете разницу между ними.
$(linkID).attr(...)
и $("linkID").attr(...)
Они совершенно разные вещи, пока вы их не очистите, вы не сможете понять, как это исправлено. Документация jQuery здесь может помочь вам.
и что касается кода, то для самого простого исправления используйте следующее:
var linkID = this.id;
var theProp = $("#" + linkID).attr("href");
alert(linkID + "" + theProp);
или
var theProp = $(this).attr("href");
alert(theProp);