0

AJAXを使用したフォームがあります。(フォーム全体ではなく)コードビハインドに送信するフォームの入力をどのように選択しますか?AJAX

  function send()
    {
         $.ajax({
                    type: 'POST',
                    url: this.action,
                    data: {'data1': $('#data1').val(), 
                    'data2': $('#data2').val() },
                    success: function (done) {
            $('#box').html(done.output);
        });
    }

@using (Html.BeginForm())
{
<input id="data1" value="0" name="data1" onclick="send();" >
<input id="data2" value="0" name="data2" onclick="send();" >

}
4

4 に答える 4

1

パラメータでそれらを指定できますdata

$.ajax({
    type: 'POST',
    url: this.action,
    data: { 
        field1: $('#field1').val(), 
        field2: $('#field2').val() 
    }
});
于 2012-06-26T19:28:00.310 に答える
0

シリアル化を使用する代わりに、フォームセレクターを受け入れる関数を作成できます。

function getFormData(formSelector,toSend){
    var formData = {};
    for(var i in toSend){
        var field = formSelector.find('input[name="'+toSend[i]+'"]');
        if(field!==undefined) formData[toSend[i]] = field[0].val();
    }
    return formData;
}

利用方法:

$.ajax({
   url: '/myurl'
   data: getFormData($('#myForm'),['FirstName','LastName','FavoriteColor']),
   type: 'POST'
  });

渡す配列は、送信するフィールドの名前属性である必要があります(IDにすることもできますが、名前属性が設定されていると思いました。

于 2012-06-26T19:33:52.817 に答える
0
            var NewKeyword = $('#txtbox1').val();
            var type = $('#txtbox2').val()

            $.ajax({
                type: "POST",  
                url: "url...",
                data: "{'type':'" + type + "','keyword' : '" + NewKeyword + "' }",

次に、C#では、「type」と「keyword」をwebmethodのパラメーターとして受け入れることができる必要があります

于 2012-06-26T19:28:46.007 に答える
0

次のようなことができます。

$form = $('form');
$.ajax({
        type: 'POST',
        url: this.action,
        data: {
            'name': $('fieldNameForName', $form).val(),
            'age': $('fieldNameForAge', $form).val()
        }
});
于 2012-06-26T19:29:18.620 に答える