2009-10-02 3 views
0

Я разрабатываю приложение ASP.NET MVC, и мне немного любопытно, если кто-нибудь скажет мне, есть ли лучший способ, чем это, чтобы отправить выбранные варианты с остальной частью формы данные?Отправить форму и включить опцию выбора в значение

var lstOption1 = $('#lstOption1 :selected').attr("optionId1"); 
var lstOption2= $('#lstOption2 :selected').attr("optionId2"); 

var formData = $(this).serialize() 
    + "&lstOption1 =" + lstOption1 + 
    + "&lstOption2=" + lstOption2; 

$.post($(this).attr("action"), formData, function(res) 
{ 

}); 

Благодаря

Dave

ответ

1

У меня есть страница MVC, которая должна отправить выбранное значение из группы переключателей.

Я использую:

var data = $.makeArray($("input[type=radio]").serializeArray()); 

Чтобы сделать массив их имена и значения

, а затем отправить его с помощью AJAX JQuery (в) к контроллеру

$.ajax({ 
    url: "/Rounding.aspx/Round/" + $("#OfferId").val(), 
    type: 'POST', 
    dataType: 'html', 
    data: $.toJSON(data), // <-- jQuery plug in to convert to json string 
    contentType: 'application/json; charset=utf-8', 
    beforeSend: doSubmitBeforeSend, 
    complete: doSubmitComplete, 
    success: doSubmitSuccess 
}); 

MVC который посылает данные как собственные данные JSON.

Затем вы можете захватить поток ответов и де-сериализовать его в свой собственный объект C#/VB.net и управлять им в своем контроллере.

Чтобы автоматизировать этот процесс в прекрасном, низком техническом обслуживании, я советую прочитать эту запись, которая достаточно хорошо описывает большую часть собственной, автоматической JSON-де-сериализации.

Article on MVC JSON deserialization

... и потому, что Stack Overflow не позволит мне размещать 2 ссылки, потому что я «новый» вы должны Google «JQuery-JSon код Google», чтобы найти JQuery JSON plug- я использую.

Надеюсь, это поможет!

+0

Ссылка JSON: http://code.google.com/p/jquery-json/ ha! Возьмите подчиненные StackOverflow! – Evildonald

1
$('select#mySelect').attr('value'); 

Это даст вам выбранный вариант.