Как отправить данные формы, используя форму jquery в asp.net? - PullRequest
0 голосов
/ 15 марта 2009

Я хочу получить значение ответа, но при нажатии кнопки ответа нет; Почему бы не отправить форму в asp.net?

Мой код:

<script type="text/javascript">
$(document).ready(function() { 
 var options = {
        target:        '#htmlTarget',
        dataType  :        'json',
        url   :        'Response.aspx',
        type  :        'post',
        beforeSubmit:  showRequest,
        success:       function(msg){ alert(msg.txt + '\n\n' + msg.item); }
 };
 $('#myForm1').ajaxForm(options);

});

function showRequest(formData, jqForm,options) {
    return true;
}

$.fn.serializeNoViewState = function()
{
   return this.find("input,textarea,select,hidden").not("[type=hidden][name^=__]").serialize();    
}

</script>
<form id="myForm1" runat="server">
<div id="htmlTarget"></div>

<input type="text" name="txt">
<br>
<input type="radio" name="item" value="A">A
<input type="radio" name="item" value="B">B
<input type="radio" name="item" value="C">C
<input type="radio" name="item" value="D">D
<br><br>
<input type="submit" name="submitbtn" value="submit">

</form>

Response.cs

public partial class Response : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        Response.Expires = -1;
        if (Request.Form["txt"] != null && Request.Form["item"] != null)
            Response.Write("{txt: '" + Request["txt"] + "',item: '" + Request["item"] + "'}");

    }
}

1 Ответ

0 голосов
/ 15 марта 2009

Может ли это быть из-за искажения идентификатора? ASP.NET чувствует, что может свободно менять ваши идентификаторы для тегов с runat = "server". Проверьте сгенерированный HTML-код и проверьте идентификатор формы.

Чтобы решить этот конкретный случай, вы можете добавить в форму элемент обертки, который не runat = server, и настроить таргетинг на форму через него.

<div id="myform_wrapper">
    <!-- your form here -->
</div>

и нацельтесь на него с

$("#myform_wrapper form")
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...