【问题标题】:post the user text to the server using $.post()使用 $.post() 将用户文本发布到服务器
【发布时间】:2011-03-16 14:22:29
【问题描述】:

您好,一旦用户键入内容,我会使用 jQuery/javascript 更新我的页面。

<script type="text/javascript">
    $(function () {
        $('button').click(function () {
            var x = $('textarea').val();
            $('textarea').val('');
            $('#test1').append('<div id="test">' + x + '</div>');
            return false;
        });
    });
</script>

<textarea style="border: 0" cols="77" rows="2">Write Something....</textarea>
<button>Post Message</button>
<div id="test1"></div>
</asp:Content>

我尝试使用 $.post() 将用户文本发布到服务器,我不知道如何在处理这些请求的服务器上的 aspx 页面上处理它,并将内容添加到 mysql db?

如果客户端请求更新的页面,则按原样发送页面框架,但使用转发器或其他循环结构从数据库中添加内容。

【问题讨论】:

  • 您的代码似乎与问题无关。你在哪里使用 $.post() 以及你的代码隐藏中有什么?
  • 我不是试图将我的 textarea 变量发布到某个地方我可以发布到列表框然后我可以将列表框的内容保存到 mysql 吗?
  • "post to a listbox" 是什么意思?

标签: c# jquery asp.net html


【解决方案1】:

您需要创建一个服务,然后将您的帖子定向到其中的服务方法。您可以通过该服务方法将数据保存到您的 MySQL 数据库

如果您在用户键入内容时尝试执行此操作,您可能会查看 keypress 事件,尽管 docs 说这可能不支持所有浏览器。

这是我不久前为了这个目的而拼凑的一个小辅助方法:

function runAjax(targetURL, dataInput, success) {
    $.ajax({
        url: targetURL,
        type: "POST",
        contentType: "application/json; charset=utf-8",
        data: dataInput,
        dataType: "json",
        success: success,
        async: true
    });
}

然后:

runAjax("yourService.asmx/ServiceMethod", "{Parameter:" + dataFromYourListBox + "}",
            function(data) {
                //update DOM
        });

【讨论】:

  • 这更多的是我在寻找的,但一个 ASP 版本?而不是 php id 喜欢它发送到一个 aspx 页面我不确定如何创建一个服务
  • 您通过右键单击您的网站创建服务,添加新项目,然后在其中找到 asmx Web 服务。我相信您也可以使用 jQuery 发布到页面类上的静态方法 - 您可以尝试谷歌搜索
  • 这里是从 jQuery encosia.com/2008/05/29/…调用静态页面方法的链接
猜你喜欢
  • 2014-07-14
  • 2014-03-10
  • 2013-12-29
  • 1970-01-01
  • 2012-05-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多