Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/361.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
基本Javascript只在Firefox上工作_Javascript_Jquery - Fatal编程技术网

基本Javascript只在Firefox上工作

基本Javascript只在Firefox上工作,javascript,jquery,Javascript,Jquery,我编写了一些非常基本的javascript来根据用户在下拉菜单中的选择显示div。出于某种原因,这只适用于firefox,而不适用于chrome、safari或ie等。有人能告诉我正确的方向吗 您可以在这里看到JSFIDLE上的整个解决方案 非常感谢。$(this).attr(“value”)通常是错误的,因为value属性并不反映输入的值(奇怪但真实)。如果需要当前值,则需要this.value或$(this.val()(或$(this.prop)(“value”)) value属性反映标记

我编写了一些非常基本的javascript来根据用户在下拉菜单中的选择显示div。出于某种原因,这只适用于firefox,而不适用于chrome、safari或ie等。有人能告诉我正确的方向吗

您可以在这里看到JSFIDLE上的整个解决方案

非常感谢。
$(this).attr(“value”)
通常是错误的,因为
value
属性并不反映输入的值(奇怪但真实)。如果需要当前值,则需要
this.value
$(this.val()
(或
$(this.prop)(“value”)

value
属性反映标记中设置的
value
,它是输入的默认值,而不是当前值。输入的
属性反映其实际值。(还有
defaultValue
属性,它直接链接到
value
属性,而不是
输入的当前值

以下是
value
属性、
value
属性和
defaultValue
属性如何工作的示例:

$(“输入[type=button]”)。在(“单击”,函数(){
var$input=$(“input[type=text]”);
显示(“
$input.val()=”+$input.val()+”);
显示(“
$input.prop('value')=”+$input.prop('value')+”)”;
显示(“
$input.attr('value')=”+$input.attr('value')+”)”;
显示(“
$input.prop('defaultValue')=”+$input.prop('defaultValue')+”)”;
});
功能显示(msg){
$(“”).html(msg.appendTo(document.body);
}
在输入中键入内容,然后单击按钮


如果其他新手遇到这个问题,我已经找到了解决方案

我需要使用

jQuery(function ($) {
不是


代码中没有问题可以完美地工作,只是在JSFIDLE中添加了jquery,在Chrome中会发生什么?控制台中有错误吗?其他一些意外行为?此外,OP有一个下拉列表(单选),因此不需要在.each()循环中使用$(“select option:selected”)。只需$(this).val(),其中
this
是select元素。这不是通用解决方案。jQuery结果在
$
jQuery
变量中的“正常”包含是同一函数的别名。问题中显示的代码在所有浏览器中都是独立工作的(链接的fiddle对我来说很好),所以如果这个答案解决了问题,那是因为问题中没有提到其他细节。
jQuery(function ($) {
$(document).ready(function(){