Тогда проблема с JQuery диалогового интерфейса и функций HTML (), Text () - PullRequest
2 голосов
/ 15 июля 2011

У меня есть диалоговое окно jquery ui с текстовой областью:

<div id="dialog">
     <textarea id="box">Hello World</textarea>
</div>

После того, как я открою диалоговое окно, я смогу редактировать содержимое текстовой области,

, затем при закрытии диалогового окна яхочу получить содержимое, которое я отредактировал

the dialog code:
 $("#dialog").dialog({
                 autoOpen: false,
                 height: 140,
                 buttons: {
                     Confirm: function () {
                         alert($('#box').html());
                         $(this).dialog("close");
                     }
                 }
             });

В этом примере исходное содержимое - «привет мир», затем открывается диалоговое окно, я удаляю «мир», странно то, что когда янажмите «Подтвердить», предупреждение на странице все еще будет «hello world»

Я изменил функцию html () на text (), результат все тот же, так как я могу получить отредактированный контент при закрытии диалога?

PS: причина, по которой я использую Html (), заключается в том, что я хочу, чтобы содержимое записывалось в базу данных Sql, сохраняя "<br>" или "&nbsp;"

онлайн-пример здесь

1 Ответ

3 голосов
/ 15 июля 2011

Попробуйте использовать:

$("#box").val()

вместо:

$("#box").html()

Если вам нужно <br> s для перевода строки, вы можете сделать замены, такие как:

$("#box").val().replace(/\n/g, "<br>")
...