最近用层框做页面弹出框操作。您不能总是在弹出框中获得输入的值。代码如下:红色标记区域
添加js代码
//Ajax添加brand函数addbrandwi(){ layer . open({ type : 0,title:' brand addition ',shadeclose: true,shade: 0.8,btn3360 ['save ',' cancel'],area: ['40% ',' 70%'],content: $('#add_Brand ')。html(),yes:function(index,layero){ subForm();layer.close(索引);},cancel:函数(){ } });} function subForm(){ var bname=$(' # brand name ')。val();$.ajax({ url: 'salecenter.jsp?Act=savabrandbname=' bname,type:' get ',datatype3360' json ',//以json格式返回数据async3360true,success 3360 function(data){ if(data=' 0 '){ layer . alert('品牌添加成功')} else if(data=='1'){ layer.alert('品牌添加失败');}else if(data=='2'){ layer.alert('这个品牌已经存在');} },error : function(){ } });}添加html代码
!-在弹出框中添加品牌-div id=' add _ brand ' style=' display : none;'表单自动完成=' off' id=' sub _ form '方法=' post ' div class=' add _ model ' div b class=' out ' *品牌名称:/div div输入名称='品牌名称' id='品牌名称' type=' text' value=''//div/。
单击保存以获取输入值,该值始终为空字符串。
后来,我在网上搜索信息。原来是一个常见的bug。原来是layer.open的内容参数(上面的红色标记代码),应该写成
Content: $('#add_Brand '),不想要它后面的html()。去掉之后,调试一般会得到输入的值,这样就足够解决问题了,并没有深究原因(关键不是那个时间)。
以上文章解决了layer.open的弹出框无法得到输入框空值的问题,这是边肖分享给大家的全部内容。希望能给大家一个参考,支持我们。