如何使用Impromptu jQuery插件获取HTML输入框的值?
获取Impromptu模态框输入框值并通过Ajax发送
你可以通过以下方式获取输入框的值,推荐使用模态框容器上下文查找的方式,避免页面其他元素干扰:
方法一:利用Impromptu提供的模态框容器参数查找
在state1的submit函数中,参数m就是当前模态框的容器元素,通过它定位输入框更精准:
submit:function(e,v,m,f){ e.preventDefault(); if(v==0){ // 点击Done按钮时 var inputVal = $(m).find('#user_input_msg').val(); var req = ajax.request[action]; req.confirmed = 1; req.input_text = inputVal; ajax.exec(req); } else if(v==-1){ $.prompt.goToState('state0'); } else{ ajax.clearActionState(action); } }
方法二:直接通过ID选择器获取
如果页面中仅存在一个user_input_msg输入框,也可以直接用ID选择器取值:
var inputVal = $('#user_input_msg').val();
说明
- 优先使用方法一,因为Impromptu的模态框是动态生成的,通过容器上下文查找能确保拿到的是当前模态框内的输入框值,不会和页面其他同ID元素冲突
- 获取到值后,将其赋值给
req.input_text,再执行ajax.exec(req)即可通过Ajax发送请求
内容的提问来源于stack exchange,提问作者AVe
相关产品推荐
相关产品推荐

