我必須閱讀更改事件中html.TextBoxFor
字段的值。從Javascript讀取MVC @ Html.TextBoxFor
現在我有這個元素在我的MVC形式:
@Html.TextBoxFor(m => m.Pod, new {
@class = "inputStyle180", @title = "Pod", @onchange = "onChangePod();"
})
}
而這個JavaScript函數:
function onChangePod() {
var Trovato = false;
//var sPod = document.getElementById("Pod").value;
var Pod = $('#Pod').val();
alert(sPod);
$.getJSON('@Url.Action("VerificaDatiUtenza", "EELAutoletture")', {
Pod: Pod
}, function(data) {
$.each(data, function(i, item) {
Trovato = true;
if (i == "Denominazione") {
$('#Denominazione').val(item);
}
if (i == "Localita") {
$('#Localita').val(item);
}
});
});
if (Trovato == false) {
alert("ATTENZIONE! Pod non in anagrafica");
}
};
但變量Pod
爲空
'變種波德= $(」 #Pod').val();'可以正常工作(除非你有多個元素與'id ='「Pod」') –
@Stephen Muecke如果'Pod'是一個複雜模型的嵌套屬性,將會包含一個前綴所以'$('#Pod')。val()'不起作用。我認爲在這種情況下使用'$(「#@ Html.IdFor(m => m.Pod)」)。val()'會更好, –
@AlexArt。,不!如果它是一個嵌套屬性,那麼'@ Html.TextBoxFor(m => m.Pod,。)'會拋出一個異常 - 它需要是'@ Html.TextBOxForm(m => m.SomePropery.Pod .. .. )'。 OP的代碼完美工作,除非有其他元素使用'id =「Pod」' - 這種情況下只能找到第一個 –