form表单提交数据到数据库,其中的文本域中的数据丢失,为null,其它字段均有数据,为何?
看下你的表单的name和你服务器端的getParameter(name)里面的名字是不是一致
还有你的表单是不是写在了form标签的外面。
确保文本域的name和后台接收的name一致就行了 例: 后台接收的时候填Remark就行了
直接写标签被屏蔽了 < textarea type="text" class="form-control" name="Remark" id="Remark" value="@Model.Remark" >< /textarea >
尝试使用最基本的js,在提交的时候alert一下,在后台的bean在检查一下,数据库sql也看一下,不一定是那个环节的漏洞引起的
首先看看你的name 对应的值是否一致,然后你可以看一下 你的获取值的地方业务逻辑有没有问题。再一个看下你实体类里面有没有相应的字段
第一。name 写的不对
第二,包含了 disabled属性,无法传输数据到后台,可以尝试用readonly不受限制
查看name与实体类字段是否匹配
确保文本域的name和后台接收的name一致就行了,名称匹配才行,不然会出错的
KindEditor.ready(function(K) {
window.editor = K.create('textarea[name="THEMECONTENT"]', {
cssPath : '../plugins/code/prettify.css',
uploadJson : '../jsp/upload_json.jsp',
fileManagerJson : '../jsp/file_manager_json.jsp',
allowFileManager : true,
width : '430px',
height : '200px',
//minWidth : '400px',
//minHeight : '200px',
resizeType : 2,
pasteType : 1,
items : [ 'fullscreen' ],
afterCreate : function() {
var self = this;
K.ctrl(document, 13, function() {
self.sync();
document.forms.submit();
});
K.ctrl(self.edit.doc, 13, function() {
self.sync();
document.forms.submit();
});
},
afterBlur : function() {
this.sync();
}
});
});
源码如下,使用ajax实现的,有什么问题?
如果你用的是ssm框架,就得查看插入所对应的sql中该字段的别名是否跟页面的name属性字段保持一致,如果不一致则不会保存进去也不会报错,这里面可以排除数据类型不一致的错误,因为如果报错那么其他数据是不会插入到库里面而是会事务回滚。
首先 用谷歌或者火狐的浏览器 然后按 F12 然后点击提交 看看 是否有 数据传输过去,另外用request.getparamtere("你要传输的地段")看看是否是没有传输过去
前后 名字要一致 确认 符号之间没有空格
name 要写对,还有包含了 disabled属性,无法传输数据到后台
检查文本域的name值与实体对象的属性name是否一致
我觉得你是哪里没注意,一、是html的name值与后台获取的name值必须一致,二、如果form表单提交量很大,请注意修改一下配置,允许最大传输值,三、你不会是file字段获取不到吧,要加enctype=multipart/form-data
字段名称不对!确定是否不是首字母大写,或者你的字段名称为node 这种,有时候一些js框架识别不了,属于标识符
你数据库中的字段与实体类中的属性是否对应
name属性,是否上传图片,传的参数条件是否传全?是否禁用,关键字是否重复,换一种接收方式
检查一下前后别名是否一致
第一。name 写的不对
第二,包含了 disabled属性,无法传输数据到后台,可以尝试用readonly不受限制。
正解
from表单获取数据一般是根据某一标签获取值然后赋一个name的值 假如你获取的是input的值 那么select,checkbox等等 只要不是input开头的都是无法根据name取值的,通常是这种格式“name”:"值";这种数据时无法自动获取值的,如果你要获取值通常都是自己定义一个变量获取然后又添加到你要传输数据的数组里面,例:data.Name="张三";