У меня есть следующий @Html.DisplayFor
, как он мог бы делать, чтобы брать идентификацию и это перемещать в объект AJAX?
@Html.DisplayFor(modelItem => item.Regla, new { id = "reglaid" })
Я пробовал со следующими линиями, но когда я это перемещаю в драйвер, он фигурирует меня как null
:
$("#botonformularios").click(function () {
var obj = {
Rid:$("#reglaid").children("input").val(),
Result: $("#result").parents().children("input").val(),
}
$.ajax({
type: 'POST',
contentType: false,
url: "/ZsvalWorkflow/Create",
dataType: 'json',
contentType: "application/json; charset=utf-8",
data: JSON.stringify(obj),
success: function (data) {
alert(data)
},
});
})
DisplayFor произведи html основываясь на свойствах объекта (в общем их несколько div, если это класс и элемент, если это стоимость), но в твоем случае я представляю себе то, что ты только хочешь взять стоимость единственного свойства и напечатать это.
В этих случаях то, что производится в html, является элементом тип текст asГ - который soluciГіn в твоем случае состоит в том, чтобы писать div вокруг и распределять ему один пойдите или другой тип селектор, чтобы мочь идентифицировать это и выбирать это с jQuery. Ты cГіdigo quedarГ - в asГ-:
<div id="reglaid">
@Html.DisplayFor(modelItem => item.Regla.Rid)
</div>
<div class="form-group">
<div class="col-md-offset-2 col-md-10">
<input id="botonformularios" type="submit" value="Create" class="btn btn-default" />
</div>
</div>
И потом в твоем рукописном шрифте ты это обнаруживаешь из-за id
$("#botonformularios").click(function () {
var obj = {
Rid:$("#reglaid").text(),
// Resto del código
})
Имей в виду, что, если ты используешь razor в твоем рукописном шрифте обязано это поддерживать всегда внутри cshtml поэтому в моем ответе, я рекомендую тебе использовать этот вариант. Используя jquery ты можешь двигать твой рукописный шрифт без проблем в отдельный файл тогда, когда ты cГіdigo comienze, чтобы расти.
То, что ты был бы должен определять, как renderiza в html DisplayFor (), помнит, что этот основывается в template, чтобы определять результат в browser. Ты мог бы использовать Девелопер Тоольс (соглашаясь с F12), чтобы инспектировать страницу и определять, что tag он производит.
Как только определять tag ты мог бы применять селектор jquery, который позволяет возвращать стоимость.
, Если бы renderiza в div или span, в jquery ты использовал .html () , или же
var regla = $("reglaid").html();
В твоем коде ты не распределяешь стоимость obj.Id
именно поэтому прибудь к action как 0
Понимая, что в модели ты имеешь Id
как свойство модели, и что код javascript был внутри вида Razor:
$("#botonformularios").click(function () {
var obj = {
Id: @Model.Id, // o el valor que necesites
Rid:$("#reglaid").children("input").val(),
Result: $("#result").parents().children("input").val(),
}
$.ajax({
type: 'POST',
contentType: false,
url: "/ZsvalWorkflow/Create",
dataType: 'json',
contentType: "application/json; charset=utf-8",
data: JSON.stringify(obj),
success: function (data) {
alert(data)
},
});
})