我有一个 express 网站,里面有一个表格。该表单允许我们将用户信息数据发送到数据库(mysql)。我注意到,当我们使用 Internet Explorer 时,提交功能不会向数据库发送任何数据。其他浏览器工作得很好。但 IE 不向数据库发送任何内容。当使用 IE 单击提交后,表单会将我们发送到确认页面,表明提交成功。但数据库里什么也没有。我使用的代码如下。这是admission.js 路由器文件。
router.post('/add-application', function (req, res) {
var first_name = req.body.first_name;
var middle_name= req.body.middle_name;
var last_name = req.body.last_name;
//check errors
req.checkBody('first_name', 'First name is required').notEmpty();
var errors = req.validationErrors();
if (errors) {
res.render('/error', {
errors:errors,
first_name : first_name,
middle_name : middle_name,
last_name : last_name
});
} else {
var applications = {
first_name : first_name,
middle_name : middle_name,
last_name : last_name
};
}
var query = connection.query('INSERT INTO applications SET ?', applications, function (err, result) {
console.log('Error:' + err);
console.log('Success: ' + result);
});
req.flash('success_msg', 'Application Inserted!');
res.redirect('/');
});
我在标题上还有以下适用于 IE 的脚本:
<script src="https://oss.maxcdn.com/html5shiv/3.7.3/html5shiv.min.js"></script>
<script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
这是表格:
<div class="container">
<div class="row">
<h2>Register</h2>
<form class="form-register" method="post" action="/admission/add-application">
<div class="col-lg-12">
<div class="panel panel-default">
<div class="panel-heading">
<h4><i class="fa fa-fw fa-check"></i>Information</h4>
</div>
<div class="panel-body">
<label>First Name</label>
<input name="first_name" type="text" class="form-control" placeholder="Enter the first name" required><br />
<label>Middle Name</label>
<input name="middle_name" type="text" class="form-control" placeholder="Enter the middle name" ><br />
<label>Last Name</label>
<input name="last_name" type="text" class="form-control" placeholder="Enter the last name" required ><br />
</div>
</div>
</div>
<div class="col-lg-12">
<input style="width:25%" class="btn btn-lg btn-primary btn-block" type="submit" name="submit" value="Submit" />
</div>
</form>
</div>
</div>
最佳答案
Internet Explorer 9 || < 不支持主要组件。 Websocket 和提交表单功能只是其中两个。所以解决办法很简单。不要使用 IE。
关于javascript - Internet Explorer 9 不向 Nodejs 中的数据库发送数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41875217/