又发现自己写的JavaScript代码在FireFox下运行出错,原因很郁闷,在获取一个Radio元素的值的时候只得到了 undefind。
谷歌了一下,大多跟我用的方法是一样的
var value = $("input[name='radio1'][type='radio'][checked]").val();
这句在IE、Safari(3.2)下测试通过,但是在FireFox、Chrome下却得不到选中的值。
仔细再看手册,发现“表单对象属性”这个列表。难道说对表单对象有专用的属性判断的方法?把代码改一下
var value = $("input[name='radio1'][type='radio']:checked").val();
在IE、FireFox、Chrome、Safari(3.2)下测试均通过。
顺便测试了select元素,手册上的写法跟我常用的写法,在上述几个浏览器下都可以获取到正确的值。
var value1 = $("select").val(); var value2 = $("select option:selected").val();
我是在jQuery 1.32版本下测试的,大家可以试一下。
Stellungnahme:Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn