关于Div弹出层无法取值的解决方法

今晚遇到一个关于Div弹出层取值的难题了……在一个页面上,设置一个隐藏的DIV层,在需要使用的时候才使用jQuery代码弹出。然而这个Div弹出层的文本框的值是无法获取到的,另外在script标签里写的代码也是无法选中控制这个弹出层里的控件的。

面对这个问题,我尝试了以下几种方法都获取不了这个可恶的值,无奈上网找了一些方法同样没能解决。

1、在script标签里用jQuery的属性选择器取Div弹出层里的控件,然后alert弹出信息框测试。(无效)

2、在script标签里用JavaScript的通过元素ID名字取值来选中div弹出层里的控件,然后alert弹出信息框测试。(无效)

3、在script标签里写一个取Div弹出层文本框值的方法,在Div弹出层的控件里写脚本语言调用script标签里的方法,可调用,但同样取值不了。(无效)

……

从以上测试可发现,Div弹出层内部的脚本语言是可执行的,但是外界的脚本语言控制不了本体的控件。也就是这个Div弹出层的控件无法被外界直接找到!

【解决方法】利用内部脚本语言获取当前控件的值再进行传值即可

【更优解决方案】在jQuery取值时,先从外界找到弹出层,再找弹出层里的控件就行了!

Script标签的代码块如下:


function getValue(value){

alert("Div弹出层的值为:" + value);

}

function alert(){

alert("弹框测试!");

}

$(function(){

$("#text").blur(alert);  //这样是无法弹框的

$("#pop #text").blur(alert);  //这样即可弹框

})


Div弹出层的控件如下:



本人技术有限,文笔也不太好,大家就凑合着看吧。哪位大神有更优解决方案的,欢迎指出哈!

你可能感兴趣的:(关于Div弹出层无法取值的解决方法)