我写了一些非常基本的javascript来显示基于下拉菜单中用户选择的div。出于某种原因,这只适用于firefox,而不是chrome,safari或ie等。有人能指出我正确的方向吗?
您可以在此处查看jsfiddle上的整个解决方案 http://jsfiddle.net/TR5a5/53/
Options +FollowSymLinks
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !^/templates
RewriteRule ^(.*)$ templates/$1 [L]
非常感谢
答案 0 :(得分:0)
$(this).attr("value")
通常是错误的,因为value
属性不反映输入的值(奇怪但是真实)。如果您想要当前值,则需要this.value
或$(this).val()
(或$(this).prop("value")
)。
value
属性反映了标记中设置的value
,即输入的默认值,而不是其当前值。输入的value
属性反映其实际值。 (还有defaultValue
属性,它直接链接到value
属性,而不是input
的当前值。)
以下是value
属性,value
属性和defaultValue
属性<的示例/ em>工作:
$("input[type=button]").on("click", function() {
var $input = $("input[type=text]");
show("<code>$input.val() = '" + $input.val() + "'");
show("<code>$input.prop('value') = '" + $input.prop('value') + "'");
show("<code>$input.attr('value') = '" + $input.attr('value') + "'");
show("<code>$input.prop('defaultValue') = '" + $input.prop('defaultValue') + "'");
});
function show(msg) {
$("<p>").html(msg).appendTo(document.body);
}
<p>Type something in the input, and then click the button.</p>
<input type="text" value="default">
<input type="button" value="Click Me">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
答案 1 :(得分:0)
如果有任何其他新手遇到这个问题我暂时找到了解决方案
我需要使用
jQuery(function ($) {
不
$(document).ready(function(){