Asp.net 如何将文本框值传递给此$.ajax()调用?

Asp.net 如何将文本框值传递给此$.ajax()调用?,asp.net,ajax,jquery,Asp.net,Ajax,Jquery,如果我为任务硬编码一个值,则以下代码有效。这在现实世界中不是很有用,所以我想传递一个文本框的值。不幸的是,我无法获取传递给querystring的id=“txtTask”文本框的值。传递了硬编码的值,但当我取消注释top inputData分配并运行它时,querystring为null 有什么建议吗?谢谢 function btnAddTask_onclick() { //var inputData = { task: $("#txtTask").

如果我为任务硬编码一个值,则以下代码有效。这在现实世界中不是很有用,所以我想传递一个文本框的值。不幸的是,我无法获取传递给querystring的id=“txtTask”文本框的值。传递了硬编码的值,但当我取消注释top inputData分配并运行它时,querystring为null

有什么建议吗?谢谢

   function btnAddTask_onclick() {
                    //var inputData = { task: $("#txtTask").val() };
                    var inputData = { task: "hard-coded test data"};

                    $.ajax({
                        "url": "AddTask.aspx",
                        "type": "get",
                        "data": inputData, 
                        "success": function (response) {
                            alert(response);
                            $("body").append(response);

                        },
                        "error": function (response) {
                            alert("Error: " + response);
                        }
                    })
                }
这是标记

<asp:Content ID="Content2" ContentPlaceHolderID="MainContent" runat="server">
    <h2>
        To-Do List
    </h2>
    <p>
        <asp:TextBox ID="txtTask" runat="server"></asp:TextBox>
        <input id="btnAddTask" type="button" value="button" onclick="btnAddTask_onclick()" />
    </p>
    <div id="tasks"></div>
</asp:Content>

待办事项清单


由于这似乎是asp.net webforms,我会在文本框中使用clientMode=“static”,或者只定义一个类并将该类用作选择器。我的猜测是,由于asp.net webforms id分配,您没有正确选择文本框

<asp:TextBox ID="txtTask" runat="server" ClientIDMode="Static"></asp:TextBox>

如果不使用.net 4.0,则需要向文本框添加CSS类,并按类名引用它,因为“ClientIDMode”是4.0功能

<asp:TextBox ID="txtTask" runat="server" CssClass="myTaskClass"></asp:TextBox>

var inputData = { task: $(".myTaskClass").val() };

var inputData={task:$(“.myTaskClass”).val()};

呃,真令人沮丧!我对网络开发相当陌生,我知道这一点。我本想添加一个CssClass标记,但完全忘了添加。谢谢你的帮助。。。