1

数日前、単純なフォーム送信で作業していましたが、テキストエリアが正しく機能していました! を含む値がデータベースに正常に送信されたことを意味します\n。どちらを使用する@Html.Raw()と、string.Replace()に取得できまし\n<br />

私が今直面している問題は、ajax が送信されていることです。そして、すべてのフィールド値が次のページに送信され、応答がキャッチされます! しかし、応答は私が望むものではありません。つまり、すべて\nがサーバーに送信されないため、他のテキストと一緒に保存されず、その結果、特定の時点でテキストを分割するのに役立ちません。

私がAjaxリクエストとして使用しているのは次のとおりです。

function submitBasic() {
            $.ajax({
                url: "/ajax_requests/update_profile",
                data: "about=" + $("#about").val(),
                success: function (data) {
                    $(".basic-data").html(data);
                }
            });
        }

これにより、次のページにデータが送信されます。開発者ツールを使用して、リクエストがどのように送信されるかを調べてみました。そして、それが含まれていないことを知りました\n。それがすべての問題です。

\n他のデータと一緒に渡すにはどうすればよいですか?表示したいときに値を取得できるようにするには?

どんな提案も大歓迎です!私が欲しいものを理解していただければ幸いです。そうでない場合は、ここにコメントしてください! 私はクラフィーします。

4

2 に答える 2

2

私はあなたがこれをすべきだと思います

data: "about=" + $("#about").html().(/\n/g, "%5Cn")

古い答え!: まず、クライアント側でこのコード行を変更します

data: "about=" + $("#about").val()

に :

data: "about=" + $("#about").html().(/\n/g, "<br/>").replace(/</g,"&lt;").replace(/>/g,"&gt;")

そしてサーバー側で

var recivedData = WebUtility.HtmlDecode(about);

そしてそれを使う

于 2013-09-14T17:58:00.210 に答える
0

\nto\\nを ajax 呼び出しで送信するときにエスケープできます。

    function submitBasic() {
        $.ajax({
            url: "/ajax_requests/update_profile",
            data: "about=" + $("#about").val().replace(/\\n/g, "\\n"),
            success: function (data) {
                $(".basic-data").html(data);
            }
        });
    }

\nサーバー側で を受け取り、それを解析するために必要な処理を実行できることを願っています。

于 2013-09-14T18:03:50.080 に答える