html代码
I have a bike:
I have a car:
I have an airplane:
接下来是我的node.js 服务器端代码
if(method === 'post'){ photos = req.body.demo;
console.log('length' + photos.length);
console.log('--------------------------');
console.log(req.body);
console.log(req.body.demo);
console.log('error data' + photos[1]);
}
打印信息 length2
{ demo: '46' } 46 error data6
当我提交一个复选框的时候,竟然出现长度2的值, 理论上来说,我选上一个,就这认一个才对,希望各位能帮帮忙。
photos[1]的时候,理论上,只有一个值,这个值,应该是未定义才对哇。。。
回复 (2)
S
只是一个思维误区而已
因为typeof photos == 'string', photos='46',所以photos.length=2, photos[1]=6
当checkbox单选,浏览器发送的http请求是:demo=46,express无法区分这是来自text控件还是checkbox控件的值,于是保守点将demo设为字符串46
当checkbox多选,浏览器发送的http请求是:demo=46&dmeo=14,express一看就明白,哦,应该将demo设为数组['46','14']
H
引用 shiedman只是一个思维误区而已 因为typeof photos == 'string', photos='46',所以photos.length=2, photos[1]=6 当checkbox单选,浏...
可能是吧,我现在的写法修改了 写成 photos = [] photos.push(req.body.demo)
这样,基本算是解决了我刚才遇到的问题,谢谢你的回答
参与回复
登录后即可参与回复。登录