今天遇到的很奇怪的问题,纠结了好长时间,看下面实例代码来体会这个奇怪的问题
$.modal({ title: "测试", text: "文本框1<input type='text' id='test01' value=''/><br> 文本框2<input type='text' id='test02' value=''/>", buttons: [ { text: "获取两个文本框的value值", onClick: function(){ alert($("#test01").val()); alert($("#test02").val()); } }, ] });
问题:
点击按钮时,获取文本框1的值是正常的,文本框2是undefined。
将alert($(“#test01”).val());alert($(“#test02”).val());交换位置,先获取文本框2的值再获取文本框1的值,再来看看
发现只能获取文本框2的值,文本框1是undefined
原因(本人猜测,如果哪位大神知道原因还望告知):
点击获取按钮时会触发关闭弹框,弹框关闭太快,获取到第一个文本框的值,再去获取第二个文本框的值得时候弹框已经关闭。
解决方案:将自动关闭弹窗设置为flase:autoClose : false,,在需要关闭弹窗的时候,加入手动关闭弹窗:$.closeModal();
代码如下:
$.modal({ autoClose : false, title: "测试", text: "文本框1<input type='text' id='test01' value=''/><br> 文本框2<input type='text' id='test02' value=''/>", buttons: [ { text: "获取test01和test02的value值", onClick: function(){ //使用$.alert()会出现弹框还未弹出,窗口就关闭的情况,有知道的 //大神告知一下 alert($("#test01").val()); alert($("#test02").val()); $.closeModal(); } }, ] });
- 点赞
- 收藏
- 分享
-
- 文章举报
原文始发于:weui的自定义Dialog,只能获取到第一次获取的dome元素的值
主题测试文章,只做测试使用。发布者:sys234,转转请注明出处:http://www.cxybcw.com/90514.html