比较 JavaScript 中的变量
comparing variable in javascript
我陷入困境。我一直在尝试比较 javascript 中的两个变量,然后在匹配的情况下将一个类分配给父元素。但我在这方面没有成功。我已经搜索了所有可能的代码并尝试了它们,但无法使其正常工作。到目前为止,我编写的代码如下:
$('div#encased a').click(function(){
$('ul#filter .current').removeClass('current');
var class_name = ($(this).parent().attr('class').replace('-',' '));
var className = class_name.toString();
alert(className);
$('ul#filter li').each(function(){
/*1st version
var filterValue = $(this).text().toLowerCase();
var filterValstr = filterValue.toString();
alert(filterValstr);
if(filterValstr==className)
{
alert("match!")
$(this).parent().addClass('current');
}*/
/*2nd version*/
if($(this).text().toLowerCase() == class_name)
{
$(this).parent().addClass('current');
}
/*this works which according to me means it is not entering the if clause
else{
$(this).parent().fadeOut('slow').addClass('hidden');
}*/
});
});
据我所知,当我尝试使用 else 函数并且有效时,该值根本不会在 if 命令内。我确信我正在犯一些愚蠢的错误。我在这里尝试了 2 种方法,并评论了其中一种,但在这里介绍了这两种方法,以了解其中是否有任何一种方法是正确的。
基本上,在我的div#encased元素中单击图像时,将获取图像的类名,然后与上面过滤器菜单中的文本进行比较。如果匹配,则应为匹配的筛选器文本分配当前类。希望你明白我想解释的。请帮忙。谢谢
你的代码不清楚,有点意大利面条,但也许你的问题出在空格上,试着修剪它们
var filterValue = $.trim($(this).text().toLowerCase());
你应该知道string.toString()
返回字符串...
例:
var str = "bla bla bla";
alert(str.toString === str); // true!
相关文章:
- 调用类向后变量 (JavaScript)
- 初始化父类中的变量(JavaScript/CoffeeScript 习语)
- 可以'找不到变量javascript错误
- 输出数组变量javascript
- 自提交表单访问变量javascript
- 将变量 javascript 添加到用于旋转图像的链接中
- 在文本字段中显示保存的本地存储变量 - javascript
- 将变量添加到变量 JavaScript 中
- 获取要在变量 JavaScript 中使用的用户输入值
- 如何在变量 Javascript 中删除双引号
- 使用变量 javascript 从 json 文件中获取数据
- 读取输入和打印变量 - JavaScript 和 HTML 4.01
- 传递 PHP 变量 JavaScript 窗口位置
- 重置变量 JavaScript
- 变量 JavaScript 中的变量
- 尝试使用多个函数时无法使用全局变量 - JavaScript - 初学者
- 如何按值将数组分配给另一个变量 JavaScript
- setTimout 搞砸了变量 JavaScript
- 用内部函数变量更改外部函数变量?Javascript
- 根据变量 JavaScript 增加