小编Evi*_*mes的帖子

带函数的JavaScript三元运算符示例

我正在使用jQuery 1.7.1

我刚开始使用JavaScript三元运算符来替换简单的if/else语句.我在几个地方成功地做到了.当我成功地做出其他工作的时候,当我确信它不会,但我还是试着,我感到很惊讶.

这是原始声明:

function updateItem() {
    $this = $(this);
    var IsChecked = $this.hasClass("IsChecked");
    if (IsChecked == true){
        removeItem($this);
    } else {
        addItem($this);
    }
}
Run Code Online (Sandbox Code Playgroud)

这是使用三元运算符的相同函数:

function updateItem() {
    $this = $(this);
    var IsChecked = $this.hasClass("IsChecked");
    (IsChecked == true) ? removeItem($this) : addItem($this);
}
Run Code Online (Sandbox Code Playgroud)

我很惊讶,因为我看到的所有示例都只是设置这样的变量:

x = (1 < 2) ? true : false;
Run Code Online (Sandbox Code Playgroud)

我的问题是这是否是"正常"使用,它是否适用于大多数JavaScript版本?它会在哪里失败?还有其他不太明显的用途吗?

更新 - 感谢"现实世界"的建议!

我用它作为我的功能:

function updateItem() {
    $this = $(this);
    $this.hasClass("IsChecked") ? removeItem($this) : addItem($this);
}
Run Code Online (Sandbox Code Playgroud)

javascript jquery

91
推荐指数
5
解决办法
14万
查看次数

如何使锚点链接不可点击或禁用?

我有一个锚点链接,我想在用户点击它时禁用它.或者,从文本周围删除锚标记,但绝对保留文本.

<a href='' id='ThisLink'>some text</a>
Run Code Online (Sandbox Code Playgroud)

通过添加.attr("disabled", "disabled");
我成功添加了禁用属性,我可以通过按钮轻松完成此操作,但链接仍然可以点击.
我真的不在乎文本是否加下划线.

任何线索?

当你点击错误的音乐家时,它应该只是添加"错误"然后变得无法点击.
当您单击并且您是正确的时,它应该添加"Awesome"然后禁用所有<a>标签.

jquery

82
推荐指数
10
解决办法
21万
查看次数

为什么Firebug说toFixed()不是函数?

我正在使用jQuery 1.7.2和jQuery UI 1.9.1.我在滑块内使用下面的代码.(http://jqueryui.com/slider/)

我有一个函数应该测试两个值,并根据两个值之间的差异重新格式化它们(到适当的小数位).如果差异大于10,我将解析整数.如果差值大于5,则应保留一个小数.其他一切,我会保留两位小数.

当我输入两个差值为10或更小的值时,我使用toFixed()函数.而且,在Firebug中,我看到一个错误:

TypeError: Low.toFixed is not a function
Low = Low.toFixed(2);
Run Code Online (Sandbox Code Playgroud)

有什么简单的我做错了吗?

这是我的代码:

var Low = $SliderValFrom.val(),
High = $SliderValTo.val();

// THE NUMBER IS VALID
if (isNaN(Low) == false && isNaN(High) == false) {
    Diff = High - Low;
if (Diff > 10) {
      Low = parseInt(Low);  
  High = parseInt(High);    
} else if (Diff > 5) {
       Low = Low.toFixed(1);
       High = High.toFixed(1);
} else {
       Low = Low.toFixed(2);
   High = High.toFixed(2);
}
}
Run Code Online (Sandbox Code Playgroud)

javascript

82
推荐指数
4
解决办法
13万
查看次数

如何在左连接中选择单个记录

我需要使用其关键ModelID从Models表中选择一个特定的模型.我还需要从Model_Content表中添加一些内容.但是,Models_Content表对每个模型都有几个内容模糊.我需要选择第一个模糊.

我的表看起来像这样:

 Models // table
 ModelID // pk
 Model // varchar

 Models_Content // table
 ContentID // pk
 ModelID // fk
 Content // varchar

 SELECT M.ModelID, M.Model, C.Content
 FROM   Models M LEFT JOIN Models_Content C ON M.ModelID =  C.ModelID
 WHERE      M.ModelID = 5
Run Code Online (Sandbox Code Playgroud)

如何调整查询以选择特定模型的第一个内容模糊?

sql t-sql sql-server sql-server-2008

27
推荐指数
2
解决办法
7万
查看次数

JavaScript - 如何创建随机经度和纬度?

我想创造随机的经度和纬度.我需要在-180.000和+180.000之间创建数字.所以,我可能得到101.325或-3.546或-179.561.

你能告诉我一个快速的公式吗?

感谢大家的帮助.我结合了几个例子来满足我的需求.是的,我可以缩短代码,但这确实有助于了解正在发生的事情.

// LONGITUDE -180 to + 180
function generateRandomLong() {
    var num = (Math.random()*180).toFixed(3);
    var posorneg = Math.floor(Math.random());
    if (posorneg == 0) {
        num = num * -1;
    }
    return num;
}
// LATITUDE -90 to +90
function generateRandomLat() {
    var num = (Math.random()*90).toFixed(3);
    var posorneg = Math.floor(Math.random());
    if (posorneg == 0) {
        num = num * -1;
    }
    return num;
}
Run Code Online (Sandbox Code Playgroud)

javascript

24
推荐指数
2
解决办法
2万
查看次数

如何取消选择选择框中的项目?

我今天有一个简单的问题.我有一个选择框,使用户可以选择多个项目.此外,当用户返回页面时,他可以看到他选择了哪些项目,并在必要时取消选择它们.麻烦的是,当我试图取消选择时,选择只是变成灰色; 它不会取消选择.

<select name="MySelect" multiple>
<option value="1">1</option>
<option value="2">2</option>
<option value="3" selected="selected">3</option>
<option value="4">4</option>
<option value="5">5</option>
</select>
Run Code Online (Sandbox Code Playgroud)

因此,当上面的元素呈现给页面时,我无法取消选择该选项.值仍然是STILL传递给表单.

有帮助吗?

html select

14
推荐指数
1
解决办法
2万
查看次数

如何在同一页面上创建单独的Fancybox图库?

我们使用的是jQuery 1.7.1和Fancybox 1.3.4.我是Fancybox的新手.我从来没有在昨天之前使用它,但它在我正在使用的网站上被广泛使用.设立Fancybox的人被终止,因为他......无关紧要.:)

我正在创建一个产品比较页面.一页最多可显示四种产品.每个产品最多可包含五个特定于该产品的图像.

目前,当我点击任何图像时,Fancybox会弹出并在页面上创建一个包含所有图像的图库.因此,如果我有一个包含五个图像的产品,则有一个五个图像库.如果我有四个产品有五个图像,那么有一个图库有二十个图像.这对我来说不太好用.

我想要的是每个产品都有自己的画廊.如果他们点击产品A,他们将只看到与产品A相关联的图像.如果他们点击产品B ...就可以得到它.

如何让Fancybox在一个页面上创建单独的画廊?

编辑

目前,我的rel属性设置为'autoGallery'.下面的答案之一建议我将其改为这样的东西,这将产生我正在寻找的东西:

<img rel='Gallery1'>
<img rel='Gallery1'>
<img rel='Gallery2'>
<img rel='Gallery2'>
<img rel='Gallery3'>
<img rel='Gallery3'>
Run Code Online (Sandbox Code Playgroud)

如果我将rel属性更改为除"autoGallery"之外的任何内容,单击图像只会将图像打开到新窗口.

jquery fancybox

13
推荐指数
1
解决办法
2万
查看次数

如何通过父母和孩子订购?

我试图编写我的SQL Server 2008查询,以便我可以根据需要循环我的输出和输出标头.我已经多次以错误的方式完成了这些工作并让ColdFusion在页面内做了很多工作,但需要在SQL Server中完成.

FeatureID ParentID Feature
--------------------------
1         0        Apple      
2         0        Boy 
3         2        Charles
4         1        Daddy
5         2        Envelope
6         1        Frankfurter
Run Code Online (Sandbox Code Playgroud)

我希望我的查询结果集看起来像这样:

FeatureID ParentID Feature
--------------------------
1         0        Apple      
4         1        Daddy
6         1        Frankfurter
2         0        Boy 
3         2        Charles
5         2        Envelope
Run Code Online (Sandbox Code Playgroud)

如果ParentID为0,则表示它是主要类别.如果ParentID大于0,则表示它是次要类别,父级的子级.

所以父母需要订购A - Z,孩子需要订购AZ.

你能帮我订一下吗?

SELECT FeatureID, ParentID, Feature
FROM Features
ORDER BY
Run Code Online (Sandbox Code Playgroud)

sql t-sql

12
推荐指数
2
解决办法
1万
查看次数

jQuery - 寻找下一个Div

我试图在输入按钮后找到下一个div并切换它.

我究竟做错了什么?

JS:

$(".showNextExperience").click(function() {
    $(".experience").show();
});
Run Code Online (Sandbox Code Playgroud)

HTML:

<input class="showNextExperience" >
<div class="experience">Experience 1</div>

<input class="showNextExperience">
<div class="experience">Experience 2</div>

<input class="showNextExperience">
<div class="experience">Experience 3</div>

<input class="showNextExperience" >
<div class="experience">Experience 4</div>
Run Code Online (Sandbox Code Playgroud)

好的,这不起作用---

$(".showExperience").click(function() {
    $(this).next(".experience").toggle();
});

<table class="data">
    <tr class="tableHead">
        <td></td>
        <td width="50" align="right"><input type="button" class="showExperience" value="show"></td>
    </tr>
</table>
<div class="experience">2</div>
Run Code Online (Sandbox Code Playgroud)

当我在DIV上方移动输入按钮时它工作得很好.

$(".showExperience").click(function() {
    $(this).next(".experience").toggle();
});

<input type="button" class="showExperience" value="show">
<div class="experience">2</div>
Run Code Online (Sandbox Code Playgroud)

你能解释一下吗?

jquery

10
推荐指数
2
解决办法
7万
查看次数

如何在CFQUERY中使用两个数据源?

我正在使用ColdFusion 9.1.

我需要在一些查询中使用两个不同的数据源.我知道它可以完成,因为我看到其他代码使用两个不同的数据源,它工作正常.

我已经尝试了很多组合,但无法获得任何工作,但我知道我的两个数据源都正常工作.

我在此范围内设置了默认数据库.默认值为"DatasourceOne".

<cfquery>
SELECT UserID
FROM   DatasourceOne.TableOne IN (SELECT Userid FROM DatasourceTwo.TableTwo )
</cfquery
Run Code Online (Sandbox Code Playgroud)

有关使用多个数据源的规则或准则是什么?

澄清

我本来应该问我如何在一个查询中使用两个数据库(而不是数据源).我相信你的答案会有所不同.我们确实将两个数据库设置为数据源,但我自己有点困惑.

sql coldfusion coldfusion-9

10
推荐指数
3
解决办法
6269
查看次数