Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/84.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
文本区域表单字段未将值传递给JavaScript_Javascript_Html_Forms - Fatal编程技术网

文本区域表单字段未将值传递给JavaScript

文本区域表单字段未将值传递给JavaScript,javascript,html,forms,Javascript,Html,Forms,我在我的网站上有一个表单,它将其值传递给一些JavaScript,然后JavaScript将信息传递给PHP页面以更新数据库。提交表单时,所有值都添加到数据库中,但两个字段除外,这两个字段是文本区域 如果我删除JavaScript并添加一个简单的表单操作来直接将变量传递到PHP页面,那么所有的信息都会添加到数据库中,包括两个文本区域字段,因此问题似乎一定出在表单和JavaScript中,否则这两个字段都不会被添加到数据库中 下面是我的表单和JavaScript。(顶部保持简单我只包括了表格中存在

我在我的网站上有一个表单,它将其值传递给一些JavaScript,然后JavaScript将信息传递给PHP页面以更新数据库。提交表单时,所有值都添加到数据库中,但两个字段除外,这两个字段是文本区域

如果我删除JavaScript并添加一个简单的表单操作来直接将变量传递到PHP页面,那么所有的信息都会添加到数据库中,包括两个文本区域字段,因此问题似乎一定出在表单和JavaScript中,否则这两个字段都不会被添加到数据库中

下面是我的表单和JavaScript。(顶部保持简单我只包括了表格中存在问题的两个元素,因为它是一个长表格,如果这是错误的方法,请让我知道。)

这里是一个简化的PHP版本,我一直在更改它,正如我前面所说的,如果我将变量直接发送到PHP页面,所有信息都会添加到mysql数据库中,没有问题,但是当使用JavaScript时,不会添加工作描述和注释字段

      $ref_number = $_POST['ref_number']; 
      $job_title = $_POST['job_title'];
      $start_date = $_POST['start_date']; 
      $closing_date = $_POST['closing_date'];
      $category = $_POST['category']; 
      $location = $_POST['location'];
      $salary = $_POST['salary'];
      $client = $_POST['client'];
      $job_description = $_POST['job_description'];
      $license = $_POST['license'];
      $posted_by = $_POST['posted_by'];
      $site_id = $_POST['site_id'];
      $notes = $_POST['notes'];

      mysql_query("INSERT INTO joborders 
      (ref_number, job_title, start_date, closing_date, category, location, salary, client_name, job_description, license_required, site_id, posted_by, status, notes, posted_date) VALUES('$ref_number', '$job_title', '$start_date', '$closing_date', '$category', '$location', '$salary', '$client', '$job_description', '$license', '$site_id', '$posted_by', 'open', '$notes',  NOW()) ") 
      or die(mysql_error());
所以我发现了问题,在页面底部是这段代码,我以前没有注意到,尽管我已经看了十几遍。一旦我删除它,它就工作了,所以现在我只需要考虑是否可以将它合并到现有代码中,这样我就可以继续使用tnymce

    tinymce.init({
   selector: "textarea"
   });

好的,问题是因为页面上有这段代码

    tinymce.init({
选择器:“文本区域” });

所以我把它改成了引用类的文本形式,如下所示

 tinymce.init({
selector: "textarea.form-control",
}))

现在所有的表单字段都会发布到数据库中


感谢您的建议和评论,非常感谢。

首先,您可以在提交时使用jquery serialize,因此无需重新键入所有变量和数据对象。您是否检查了PHP是否需要最后两个值?您是否查看了firebug/chrome工具以验证值“notes”是否已发送到服务器?如果是,您还可以包含相关的PHP代码吗?请尝试
var notes=$('textarea[name=notes]').val()来代替,看看它是否有区别?还有。他们是。看到了吗?相反,学习,并使用or-将帮助您决定哪一个。如果您选择PDO。
    tinymce.init({
 tinymce.init({
selector: "textarea.form-control",