问题列表 - 第41116页

如何在jQuery属性选择器中组合逻辑OR和逻辑AND?

给出以下XML:

<users>
    <user state="CA" sex="m">Max</user>
    <user state="AZ" sex="f">Jen</user>
    <user state="OR" sex="f">Kim</user>
    <user state="NV" sex="m">Bob</user>
    <user state="CA" sex="m">Jon</user>
    <user state="AZ" sex="m">Jim</user>
    <user state="OR" sex="f">Joy</user>
    <user state="NV" sex="f">Amy</user>
</users>
Run Code Online (Sandbox Code Playgroud)

使用jQuery,有没有办法选择男性用户,来自CA或NV,但没有使用过滤功能?要清楚,我知道

$(xml).find("user[sex='m']")
Run Code Online (Sandbox Code Playgroud)

只选择男性用户

$(xml).find("user[state='CA'],[state='NV']")
Run Code Online (Sandbox Code Playgroud)

从CA或NV中选择所有用户.但是我无法将它们与单个选择器中的逻辑AND组合在一起.

但是,使用过滤器功能可以起到以下作用:

$(xml).find("user").filter(function() {
    return $(this).attr('sex') == 'm' && ($(this).attr('state') == 'CA' || $(this).attr('state') == 'NV')
}).each(function() {
    alert($(this).text());
});
Run Code Online (Sandbox Code Playgroud)

谢谢!

javascript jquery attributes jquery-selectors

9
推荐指数
1
解决办法
7865
查看次数

NSInteger的NSLog/printf说明符?

A NSInteger在32位平台上为32位,在64位平台上为64位.是否有一个NSLog总是匹配大小的说明符NSInteger

建立

  • Xcode 3.2.5
  • llvm 1.6编译器(这很重要; gcc不这样做)
  • GCC_WARN_TYPECHECK_CALLS_TO_PRINTF 打开

这让我有些悲伤:

#import <Foundation/Foundation.h>

int main (int argc, const char * argv[]) {
    @autoreleasepool {
        NSInteger i = 0;
        NSLog(@"%d", i);
    }
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

对于32位代码,我需要说明%d符.但是,如果我使用说明%d符,我在编译64位时会收到警告,建议我使用%ld.

如果我使用%ld匹配64位大小,编译32位代码时,我会收到警告,建议我使用%d.

如何一次修复这两个警告?是否有我可以使用的说明符?

这也影响[NSString stringWithFormat:][[NSString alloc] initWithFormat:].

cocoa objective-c nslog nsinteger 32bit-64bit

126
推荐指数
1
解决办法
7万
查看次数

如何验证用户是否属于C#.NET中的Active Directory用户组

我正在编写代码来验证用户是否属于特定的AD组.

当我检查时,这是组的详细信息:

"CN=Building - 28 (ALL),OU=Exchange Auto Groups,OU=AM,OU=schwab,DC=am,DC=corp,DC=schwab,DC=com"
Run Code Online (Sandbox Code Playgroud)

如果用户(例如:user1)属于该组,则我要验证该组.

我正在尝试使用返回用户所属的组列表的方法.在这里,我必须根据集团进行过滤.

用于引入用户所属的活动目录用户组的代码:

private List<string> GetUserGroupMembership(string userName)
    {

        var directoryEntry = new DirectoryEntry();
        DirectorySearcher search = new DirectorySearcher();
     **//filter based on the username**
        search.Filter = String.Format("(cn={0})", userName);
     **//How to filter based on the Group "CN=Building - 28 (ALL),OU=Exchange Auto Groups,OU=AM,OU=schwab,DC=am,DC=corp,DC=schwab,DC=com"**
        search.PropertiesToLoad.Add("memberOf");

        List<string> groupsList = new List<string>();

        SearchResult result = search.FindOne();
        if (result != null)
        {
            int groupCount = result.Properties["memberOf"].Count;

            for (int counter = 0; counter < groupCount; counter++)
            {
                groupsList.Add((string)result.Properties["memberOf"][counter]); …
Run Code Online (Sandbox Code Playgroud)

c# active-directory

1
推荐指数
1
解决办法
1970
查看次数

用javascript进行地理定位

我正在编写一个脚本来获取Geolocations(Lat,lon),我可以使用它来集中我的谷歌地图实例.现在我使用2种可能的技术.一个是google.loader.ClientLocation对象.我还没有测试过这个,因为它为我返回null.我想因为我不住在普通的地方(威廉斯塔德,库拉索岛使用无线互联网连接.所以我的调制解调器是无线的.).

因此我制作了一个备用计划navigator.geolocation.这在Chrome中效果很好,但是firefox会超时并且在IE中根本不起作用.

有没有人知道一个很好的替代方法来获得用户的地理位置,或者有人建议我的代码如何变得更稳定.

我设置了超时navigator.geolocation,因为我不希望我的用户等待更多的为5秒.增加超时并不会提高firefox的可靠性.

function init_tracker_map() {
 var latitude;
 var longitude;

 if(google.loader.ClientLocation) {
  latitude = (google.loader.ClientLocation.latitude);
  longitude = (google.loader.ClientLocation.longitude);
  buildMap(latitude, longitude);
 }
 else if (navigator.geolocation) { 
  navigator.geolocation.getCurrentPosition(
   function(position) {
    latitude = (position.coords.latitude);
    longitude = (position.coords.longitude);
    buildMap(latitude, longitude);
   },
   function errorCallback(error) {
    useDefaultLatLon();
   },
   {
    enableHighAccuracy:false,
    maximumAge:Infinity,
    timeout:5000
   }
  );
 }
 else {
  useDefaultLatLon();
 }
}

function useDefaultLatLon() {
 latitude = (51.81540697949437);
 longitude = (5.72113037109375);
 buildMap(latitude, longitude);
}
Run Code Online (Sandbox Code Playgroud)

PS.我知道有这样的SO更多的问题,但无法找到一个明确的答案.我希望人们做出一些新的发现.

更新: 尝试谷歌齿轮以及.再次成功镀铬.在FF和IE中失败.

var geo = google.gears.factory.create('beta.geolocation'); …
Run Code Online (Sandbox Code Playgroud)

javascript compatibility geolocation

5
推荐指数
0
解决办法
3652
查看次数

C++和Java对象模型之间的差异

  1. 在Java中,序列化对象非常容易.在C++中,只有memcpy它们像C结构(没有多态性)才对安全(?)对象.在C++中,如果编译器能够生成默认(普通)复制构造函数,那么为什么它不能生成自动序列化的代码?

  2. 在Java中,只能从ctor访问静态函数和数据成员.在C++中,我可以愉快地使用ctor中的非静态成员和函数.

  3. 在Java中,我可以在类中初始化内联的数据成员.在C++中,这是一个编译错误.

  4. 在Java中,我可以初始化finalctor中的成员.在C++中,我必须const在初始化列表中初始化成员.在C++中,当控制到达ctor的主体时,所有成员ctor都运行了,对吧?

  5. 在Java中,ctor可以调用另一个ctor.在C++中,我们不能这样做.

  6. 在Java中,this直到ctor返回之后才无效(this参考的转义,多线程中的错误).什么时候this在C++中有效?在this可以很容易地在两个C++和Java中逸出:在构造函数登记尚未构造的对象,以监听器(观察者模式).

  7. 在Java中,我不能在派生类中创建基类private的公共函数.我很震惊地看到在C++中是好的甚至是有用的.

任何人都可以对这些差异做出简短的解释吗?

更新.到目前为止,试图收集答案.

  1. Boost有类似序列化的支持.(托尼)

  2. 尽管我搞砸了这一点,但Alf P. Steinbach给出了一个有趣的例子.

  3. C++ 0x将支持比C++ 98更实用的初始化.(Alf P. Steinbach)#3在C++ 0x中是合法的(Ken Bloom)

  4. 在构造函数的{body}开始执行时,保证在构造函数自己的类中声明的数据成员已完全构造.(C++ - FAQ-精简版)

  5. C++ 0x将允许构造函数调用其他对等构造函数(Wikipedia,C++ 0x)

  6. C++ 03考虑在构造函数完成执行时构造的对象(Wikipedia).

  7. 访问控制之类的东西与对象模型没什么关系:这是访问控制系统的一个特性,它是一个编译时功能.(Yttrill)

c++ java constructor

6
推荐指数
1
解决办法
1603
查看次数

如何使用BufferedWriter写入标准输出

我目前正在编写一个使用BufferedWriter生成多个日志文件的应用程序.但是,在调试时,我想写入System.out而不是文件.我想我可以改变:

log = new BufferedWriter(new FileWriter(tokenizerLog));
Run Code Online (Sandbox Code Playgroud)

至:

BufferedWriter log = new BufferedWriter(new OutputStreamWriter(System.out));
log.write("Log output\n");
Run Code Online (Sandbox Code Playgroud)

而不是:

System.out.println("log output")
Run Code Online (Sandbox Code Playgroud)

新的OutputStreamWriter选项虽然没有奏效.如何只更改BufferedWriter构造函数中的Object以从文件重定向到Standard out.因为我有几个日志文件,我将写入,使用System.out无处不在,并将输出更改为文件实际上不是一个选项.

java

25
推荐指数
1
解决办法
5万
查看次数

我的Python for循环导致MemoryError.我该如何优化呢?

我正在尝试编译Apple设备将拥有的所有MAC地址的列表.oui.txt告诉我Apple已经分配了77个MAC范围.这些范围的形式为:

00:00:00
00:11:11
etc...
Run Code Online (Sandbox Code Playgroud)

这留给我追加的最后三个HEX数字.那是16^6.共有1291845632个Apple MAC地址.

我遇到的问题是编写一个程序来创建这些MAC地址的列表.这是我目前的代码:

import re

apple_mac_range = []
apple_macs      = []

# Parse the HTML of http://standards.ieee.org/cgi-bin/ouisearch to get the MACs
with open('apple mac list', 'r') as f:
    for line in f.readlines():

        match = re.search(r'[\w\d]{2}-[\w\d]{2}-[\w\d]{2}', line)

        if match:
            apple_mac_range.append(match.group().split('-'))

for mac in apple_mac_range:
    for i in range(1, 1291845633):
        print i
Run Code Online (Sandbox Code Playgroud)

这给了我一个MemoryError......我怎样才能优化它?

python memory optimization out-of-memory

4
推荐指数
1
解决办法
4398
查看次数

如何避免在Windows中过度填充PATH环境变量?

我想知道您用于管理系统中可执行文件的方法是什么.例如,我几乎可以通过命令行访问所有内容,但现在我达到了路径字符串的限制,所以我无法再添加任何dir.

那么你推荐什么?很久以前,我尝试在属于路径的Dir中使用可执行文件的softLinks,但这种方法不起作用.将"只有可执行文件"抛给已知的Dir,几乎任何应用程序都需要一组文件,所以这也很糟糕.将可执行文件和他的所有文件都抛给一个已知的Dir,这样就可以了,但是在文件名中出现冲突的可能性非常高.创建一个HardLink?我不知道.你怎么看?

windows executable path environment-variables

114
推荐指数
7
解决办法
8万
查看次数

用于java的String.matches方法的正则表达式?

基本上我的问题是这个,为什么:

String word = "unauthenticated";
word.matches("[a-z]");
Run Code Online (Sandbox Code Playgroud)

归还假?(用java1.6开发)

基本上我想看看传递给我的字符串是否包含alpha字符.

java regex string

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

在条件下将脚本添加到ScriptManager

我有一个棘手的场景,我想在某些条件下添加ScriptManager脚本引用,如下所示

<asp:ScriptManagerProxy ID="scriptManagerProxy1" runat="server">
<CompositeScript>
    <Scripts>
        <asp:ScriptReference path=/...." />
    </Scripts>
</CompositeScript>
<asp:ScriptManagerProxy>
Run Code Online (Sandbox Code Playgroud)

我想仅在特定条件下制作此脚本参考,所以我做了如下

<% if(xyzclass.property)
{ %>

above code

<% } %>
Run Code Online (Sandbox Code Playgroud)

一旦我这样做,我得到错误

The Controls collection cannot be modified because the control contains code blocks (i.e. <% ... %>).
Run Code Online (Sandbox Code Playgroud)

我google了,试图将'#'添加为<%#但是添加'#'它找不到类(xyzclass),所以得到错误为

Expected class, delegate, enum, interface, or struct
Run Code Online (Sandbox Code Playgroud)

我也尝试过这里提到的工作 http://leedumond.com/blog/the-controls-collection-cannot-be-modified-because-the-control-contains-code-blocks/

到目前为止没有运气.如果我采用上面链接中提到的方法,它会说类似的东西

The base class includes the field '', but its type (System.Web.UI.ScriptManagerProxy) is not compatible with the type of control (System.Web.UI.ScriptManager).
Run Code Online (Sandbox Code Playgroud)

伙计们,我需要的只是动态地通过ScriptManager添加脚本.有没有什么方法在实践中也很好.

提前致谢,

的NiMesh

c# asp.net asp.net-ajax

4
推荐指数
1
解决办法
5756
查看次数