我使用了以下教程:http : //msdn.microsoft.com/zh-cn/library/gg508808%28VS.98%29.aspx一切似乎都很好,但就我而言,字符串Username總是返回null。經(jīng)過(guò)大量研究,我發(fā)現(xiàn)每個(gè)人都發(fā)現(xiàn)了BIND前綴。在許多情況下,這將是很好的選擇,但在這種情況下卻不是。我應(yīng)該注意所有屬性和名稱對(duì)齊,但是在我的for循環(huán)中,EditorFor創(chuàng)建了一個(gè)[i] .Username字段,并且此字段未映射到任何模型屬性。問(wèn)題:我想我想將[i] .Username映射到Username,其中i是從0到無(wú)窮大的任何數(shù)字,因此當(dāng)它GETS時(shí),該值將正確傳遞給Action。我該怎么做呢?如果這是錯(cuò)誤的,我該如何對(duì)表中的特定行進(jìn)行驗(yàn)證?@for (var i = 0; i < Model.Count; i++){ BLAH BLAH BLAH CODE FOR BUILDING TABLE ROWS <td> @Html.EditorFor(modelItem => Model[i].Username) </td> }因?yàn)閺募夹g(shù)上講我可以擁有成百上千的記錄(如果沒(méi)有成千上萬(wàn)的記錄),那么我寧愿沒(méi)有針對(duì)所有1000的具有約束力的前綴。我在這里根本上缺少什么嗎?我是ASP.NET MVC的新手,并且習(xí)慣于WebForms,所以我感覺(jué)有時(shí)候我在混搭概念并混搭完全錯(cuò)誤的東西。編輯: 我通過(guò)執(zhí)行以下修復(fù),但不確定這是否是最好的主意。我將參數(shù)設(shè)置為等于不帶[i]前綴的FieldName,但是仍然檢索帶[i]前綴的元素。Javascript不是我的強(qiáng)項(xiàng),所以請(qǐng)讓我知道它是否可怕。adapters.add("remote", ["url", "type", "additionalfields"], function (options) { var value = { url: options.params.url, type: options.params.type || "GET", data: {} }, prefix = getModelPrefix(options.element.name); $.each(splitAndTrim(options.params.additionalfields || options.element.name), function (i, fieldName) { var paramName = fieldName.substr(fieldName.lastIndexOf(".") + 1); var actualFieldName = appendModelPrefix(fieldName, prefix) value.data[paramName] = function () { return $(options.form).find(":input").filter("[name='" + escapeAttributeValue(actualFieldName) + "']").val(); }; }); setValidationValues(options, "remote", value);});
2 回答

素胚勾勒不出你
TA貢獻(xiàn)1827條經(jīng)驗(yàn) 獲得超9個(gè)贊
不確定-我尚未測(cè)試(目前沒(méi)有時(shí)間)。如果嘗試進(jìn)行操作,但有問(wèn)題,則建議您為該問(wèn)題添加評(píng)論(請(qǐng)參閱答案中的鏈接),以便得到解決。有趣的[Remote]
是,由于這個(gè)問(wèn)題,我最近報(bào)告了另一個(gè)有關(guān)其他字段的錯(cuò)誤
- 2 回答
- 0 關(guān)注
- 469 瀏覽
添加回答
舉報(bào)
0/150
提交
取消