jquery ajax 上的 Textarea 不会发送到 mysql,只是输入字段



我在尝试将文本区域的值发送到mysql时遇到问题。成功发送了输入postusername的值,但没有发送文本区域的值。

当它工作时(我不知道为什么停止),第一次发送值,但如果我试图在不刷新页面的情况下发送另一个值,则会再次发送以前的值,而不是插入文本区域的新值。

现在,textarea在alert窗口中向我返回一个空值,并且只在mysql中记录输入postusername

<form id="newpostform" method="post" style="width:90%;margin-left:auto;margin-right:auto;margin-top:-35px;margin-bottom:10px;font-family:Calibri,Arial;">
    <textarea class="editbook" name="newpostcontent"></textarea>
    <div style="margin-top:10px;margin-right:25px;">
        <input type="text" value="<?php echo $username0; ?>" name="postusername">
        <input class="Button" style="float:right;margin-bottom:10px;margin-left:10px;" type="button" value="Preview">
        <input class="Button" style="float:right;margin-bottom:10px;margin-left:10px;" type="button" value="Save draft">
        <input id="sendButton" class="Button" style="float:right;margin-bottom:10px;" type="button" value="Send">
    </div>
</form>
<script>
    $(function () {
        $("input#sendButton").on("click", function () {
            $.post('newpost.php', $("form#newpostform").serialize(), function (data) {
                alert($("textarea[name=newpostcontent]").val());
            });
        });
    });
</script>

newpost.php

require("../db_info.php");
mysql_query("
    INSERT INTO
        post (
            author, 
            content
        ) 
        VALUES (
            '".$_POST['postusername']."', 
            '".$_POST['newpostcontent']."'
    )"
);

如果我这样做,例如:

mysql_query("
    INSERT INTO
        post (
            author, 
            content
        ) 
        VALUES (
            '".$_POST['postusername']."', 
            'Why doesn't this work?'
    )"
);

$_POST['postusername']和短语"为什么这不起作用?"正确地写在sql中。

感谢您的关注。

像这样尝试

var content=$("textarea[name=newpostcontent]").val(),
username=$("input[name=postusername]").val();
$.post('newpost.php', {newpostcontent:content,postusername:username}, function (data) {
     alert(content);
});

希望这能起作用

相关内容

  • 没有找到相关文章

最新更新