簡體   English   中英

從選擇下拉列表中檢索對象

[英]Retrieve object from select drop down list

我正在嘗試從這個 razor 頁面中的最后一個表單組返回一個 meetingSpace 對象:

<form method="post">
    <input type="hidden" asp-for="Booking.Id" />
    <div class="form-group">
        <label asp-for="Booking.Name"></label>
        <input asp-for="Booking.Name" class="form-control" />
        <span class="text-danger" asp-validation-for="Booking.Name"></span>
    </div>

    <div class="form-group">
        <label asp-for="Booking.Start">Start</label>
        <input asp-for="Booking.Start" class="form-control" />
        <span class="text-danger" asp-validation-for="Booking.Start"></span>
    </div>
    <div class="form-group">
        <label asp-for="Booking.Duration">Duration</label>
        <input asp-for="Booking.Duration" class="form-control" />
        <span class="text-danger" asp-validation-for="Booking.Duration"></span>
    </div>

    <div class="form-group">
        <label asp-for="Booking.MeetingSpace">Room</label>
        <select data-value="true" data-va-required="The meeting space field is required" id="MeetingSpace.Id" name="MeetingSpace.Name">
            @foreach (var meetingSpace in Model.meetingSpaces)
            {
                <option value="meetingSpace">@meetingSpace.Name</option>
            }
        </select>
    </div>


    <button type="submit" class="btn btn-primary">Save</button>
</form>

我不確定如何設置此選擇下拉列表以將值返回到 Booking.MeetingSpace 屬性。 我可以在下拉列表中看到 meetingSpace 對象的列表,但在選擇一個選項后,創建/編輯的對象中的 meetingSpace 字段不會像表單中的其他屬性一樣返回。 我也嘗試過使用 Booking.MeetingSpaceId int 進行同樣的操作,但在提交表單后仍未填充。

嘗試更改名稱屬性值可能是綁定問題,如下所示:

<select data-value="true" data-va-required="The meeting space field is required" id="Booking.MeetingSpace.Id" name="Booking.MeetingSpace.Name">
            @foreach (var meetingSpace in Model.meetingSpaces)
            {
                <option value="@meetingSpace.Id">@meetingSpace.Name</option>
            }
</select>

選項值也應該以@ 開頭才能被識別。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM