Привязка выбранного значения из DropDownList для MVC View с помощью Razor - PullRequest
0 голосов
/ 27 октября 2011

У меня есть представление, которое работает, но я не могу понять, как получить выбранное значение из DropDownList:

@model IEnumerable<TRP_MVC_Prototype.Models.usp_TM_Select_ShortNameResult>
@using System.Web;
@using System.Web.WebPages;
@using System.Web.Mvc;  

@{
    ViewBag.Title = "Details";
}
@using (Html.BeginForm("Details", "ProgramSummary", FormMethod.Post, new { id = "Details" }))
{
<div id="main" style="background-color:White">
        <h1 style="background-color:transparent;color:Blue;">
        <a>You are logged on as: @ViewBag.Message </a>
        <span class="DrpDwnLst">DrpDwnLst</span>
        @Html.DropDownList("Short_Title", new SelectList(Model, "short_title", "short_title"), "--Select One--").
        @Html.ActionLink("Select","Details",new { Shrt_title = ""})
        <a style="color:Blue;position:absolute; right:500px"> @Html.ActionLink("Create Program Summary", "Index", "User_Guide") </a>
        <a style="color:Blue;position:absolute; right:250px"> @Html.ActionLink("Edit Program Summary", "Index", "User_Guide")</a>
        <a style="color:Blue;position:absolute; right:50px"> @Html.ActionLink("Delete TRP", "Index", "User_Guide")</a>
        </h1>
        <h1 style="background-color:transparent;color:Blue;">Select TRP to View</h1>
        <h1 style="color:Gray";>______________________________________________________________________________________________________________________________________________________________________________</h1>
}

DropDownList отображается правильно, но я не знаю, как вернуть выбранное значениев ActionLink.В ссылке действия третий параметр передает значение обратно в контроллер, который в настоящее время имеет "", но я хотел бы выяснить, как вместо этого ссылаться на выбранное значение.

Ответы [ 2 ]

0 голосов
/ 31 октября 2011

Это мой ответ

    @Html.DropDownList("short_name", ViewBag.DetailsList as SelectList, "--Select One--", new { onchange = "dofunction(this.form.short_name);" });
    function dofunction(dropdown) {
        debugger;
        for (i = 0; i < 194; i++) {
            if (dropdown[i].selected == true) {
                var Shrt_ttls = dropdown[i].value.toString()
                //document.getElementById("shrtLst").value = Shrt_ttls;

                $.ajax({
                    url: "/ProgramSummary/Details?Shrt_titles=" + Shrt_ttls,                 
                    type: 'Post',                 
                    data: Shrt_ttls,                 
                    success: function(result) { 
                        alert( "Short Name is: " + Shrt_ttls); // process the results from the controller action                 
                    },             
                    error: function () {
                         alert ( "no deal");
                    }
                });  
            }
        }
        return true;
     }

Возвращает значение из функции javascript в HTTPPost для индекса.Спасибо, Брюс

0 голосов
/ 28 октября 2011

Вы можете сделать это с помощью jquery . Для изменения href от элемента вы можете увидеть это post .

Вам также нужно обработать событие изменения для вашего выпадающего списка:

$('#short_title').change(function() 
{
   // do someting here
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...