Я пытаюсь разобрать элемент (выпадающего) окна на сообщении формы.Parsing html elelments по форме POST в NodeJS
Тело запроса содержит только элемент 'txt1'. Никаких признаков элемента lstSelect.
Я знаю, что должен использовать тело-парсер, но не знаю, как и какой?
Это шаблон Джейд:
extends layout
block content
.jumbotron
h1 Calculator
form(action='/calc',method='post', id="tableForm")
p
select(name="lstSelect", id="lstSelect", size ="5")
option(value='one') One
option(value='two') Two
option(value='three') Three
p
input(type='text', name='txt1', id='txt1')
p
input(type='submit' name='StdDev', value='StdDev')
Это файл NodeJS:
//"use strict";
var express = require('express');
var routes = require('./routes/index');
var api = require('./routes/api/index');
var http = require('http');
var path = require('path');
var app = express();
var bodyParser = require('body-parser');
var multiparty = require('multiparty');
// view engine setup
app.set('views', path.join(__dirname, 'views'));
app.set('view engine', 'jade');
// uncomment after placing your favicon in /public
//app.use(favicon(__dirname + '/public/favicon.ico'));
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({ extended: true }));
app.use(bodyParser.json());
app.use(require('stylus').middleware(path.join(__dirname, 'public')));
app.use(express.static(path.join(__dirname, 'public')));
app.post('/calc', function (req, res) {
var lstSelect = req.body.lstSelect; <- undefined
var form = new multiparty.Form();
form.parse(req, function (err, fields, files) {
// fields fields fields
var x = 1; <- bp never reached
});
var b = req.body; <- only txt1 element is here
});
EDIT: большой недостаток. Выбранное значение находится в request.body, но мне все еще нужен полный список. Мне нужен массив значений окна «Выбрать».
спасибо. это правда. но все еще не решает проблему. – Jalle
Теперь проблема с отступом. 'select' должен быть одним отступом внутри' p' и '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' ''. Ваш текущий отступ означает, что они братья и сестры, а не дети. Посмотрите на мой ответ за правильный отступ. – alizahid