使用javascript将span更改为input(viceversa),然后AJAX更新输入



我现在有这个代码作为我的span:

 <span class="subheading">
 <span id="loadNum"><?php echo $status ?></span>
 &nbsp;&nbsp;
 <i class="fa fa-question-circle" rel="tooltip" title="Click on your status to change it." id="blah"></i>
 </span>

现在,我使用以下代码作为javascript:

    <script>
       var switchToInput = function () {
        var $input = $("<input>", {
            val: $(this).text(),
            type: "text",
            style: "color: #000"
        });
        $input.attr("ID", "loadNum");
        $(this).replaceWith($input);
        $input.on("blur", switchToSpan);
        $input.select();
    };
    var switchToSpan = function () {
        var $span = $("<span>", {
            text: $(this).val()
        });
        $span.attr("ID", "loadNum");
        $(this).replaceWith($span);
        $.ajax({
            type:"POST",
            url:"includes/ajaxprocess.php",
            data:{status: status},
            success:function(data){
               $("#info").html(data);
            }
        });
        $span.on("click", switchToInput);
    }
    $("#loadNum").on("click", switchToInput);
</script>

最后但并非最不重要ajaxprocess.php

<?php
mysql_connect("localhost","root","");
mysql_select_db("blogger");
$status=$_POST["status"];
$query=mysql_query("UPDATE blog_members (status) values('$status') ");
if($query){
    echo "Your status has been updated";
}
else{
    echo "Error in updating your status";
}
?>

但是,当我更新我的状态,并让输入成为一个跨度时,DB的字段不会更新。我怎么能做到这一点。

BTW:$状态已定义。别担心。

您的UPDATE语法错误。

UPDATE blog_members 
SET status=-- status information 
WHERE user_id=--identifying who the status belongs to

MySQL在UPDATE 上手动输入

相关内容

最新更新