在输入新文本后更新textarea内容的值

时间:2015-03-11 11:21:54

标签: javascript jquery html

我想在页面中添加一个textarea,我可以通过在textarea内输入并将其保存在服务器上(不仅是cookie)来添加新文本。 页面将被复制乘以不同的上下文,例如,名称和其他内容。我想在每个页面上单独更改textarea,不要在每个页面上覆盖它。

到目前为止我的textarea代码:

    <div id="descriptionDiv" style="float:right;">
       <form id="addDescription-form">
         <fieldset>
            <input type="textarea" id="descriptionTextboxID" name="descriptionTextbox" style="width:400px;height:75px" class="text ui-widget-content ui-corner-right" placeholder="Short description" ></input></p>
            <button type="submit" value="Submit" onClick="addText()">Save</button>
       </fieldset>
   </form>
</div>

到目前为止,addText()函数的草案看起来像这样:

function addText() {
     var descriptionContent = $("#descriptionTextboxID").val();
     $("#addDescription-form #descriptionTextboxID").val(descriptionContent); }

在每个页面上都会有唯一的名称。我可以用它来区分textarea上下文吗?到目前为止,我还有问题在服务器上保存我的新值,当我刷新页面时,我再次看到占位符而不是新值。

1 个答案:

答案 0 :(得分:0)

如果您花了两个小时来浏览这个(免费)视频系列,那么您将成为专业人士。

https://phpacademy.org/videos/php-and-mysql-with-mysqli

从textarea阅读:

var ta_content = $('#myTA').val();

用于更新服务器:

$.ajax({
    type: 'post',
     url: 'your_php_processor_file.php',
    data: 'ta=' + ta_content,
    success: function(d){
        //anything the server echoes back will be in var " d ". So, for e.g.:
        if (d.length) alert(d);
    }
});

<强> your_php_processor_file.php:

<?php
    $tarea = $_POST['ta'];

    //do your mysqli_ input here, using $tarea variable

    echo 'This goes back to the AJAX block';

以下是获取AJAX基础知识的一些好帖子:

A simple example

More complicated example

Populate dropdown 2 based on selection in dropdown 1


请注意,对于AJAX,您不需要使用<form>架构 - 但如果这样做,则必须禁止{{1}的默认操作按钮(因为它将导航到另一个页面,这是AJAX所有关于防止的)。因此:

submit