问题标签 [selectsinglenode]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
6 回答
32219 浏览

.net - 为什么需要 XmlNamespaceManager?

关于为什么- 至少在 .Net 框架中 - 在执行 XPath 查询时有XmlNamespaceManager必要[local-name()=...使用. 我确实理解为什么命名空间是必要的或至少是有益的,但为什么它如此复杂?

为了查询一个简单的 XML 文档(无命名空间)...

...一个人可以使用类似的东西doc.SelectSingleNode("//nodeName")(匹配<nodeName>Some Text Here</nodeName>

谜团#1我的第一个烦恼——如果我理解正确的话——仅仅是将命名空间引用添加到父/根标记(无论是否用作子节点标记的一部分),如下所示:

...需要几行额外的代码才能获得相同的结果:

...基本上梦想着一个不存在的前缀(“ ab”)来找到一个甚至不使用前缀的节点。这有什么意义?(概念上)有什么问题doc.SelectSingleNode("//nodeName")

谜团 #2:假设您有一个使用前缀的 XML 文档:

...如果我理解正确,您必须将两个命名空间都添加到XmlNamespaceManager, 以便查询单个节点...

...为什么,在这种情况下,我需要(概念上)一个命名空间管理器?

******已编辑为以下评论****

编辑添加: 我修改和完善的问题是基于 XmlNamespaceManager 在我认为大多数情况下的明显冗余以及使用命名空间管理器来指定前缀到 URI 的映射:

当名称空间前缀(“cde”)到名称空间 URI(“ http://example.com/xmlns/foo ”)的直接映射在源文档中明确说明时:

程序员在进行查询之前重新创建该映射的概念需求是什么?

0 投票
1 回答
1663 浏览

javascript - 我正在尝试用 jQuery 替换 Xpath

Android 浏览器不支持 XpathEvaluator 对象。

我正在尝试用 JQuery 替换 Xpath。

例如,

但是,我不知道如何更改以下代码?

你知道对 jQuery 代码应用 OR 操作吗?

你知道将一个深度属性应用于 jQuery 代码吗?

或者你有其他好的解决方案吗?

0 投票
1 回答
2808 浏览

c# - SelectSingleNode() 与 XPath C# 失败

我从 Wireshark 获得了一个 XML 文件作为导出文件,并且想要选择实际帧的编号

这个文件的结构是这样的

...等等...

我使用此代码来选择数据包/字段

如果我通过代码进行调试,它总是选择具有正确属性的正确节点。但是在每次迭代中都会打印出一个“1”。

有没有人怀疑这是什么失败?我没有在互联网上找到任何有关此故障的信息

非常感谢你!!

0 投票
1 回答
817 浏览

c# - Create single node if select single node is null

I have a program that updates a config file. For example, the config file may contain:

To update this config file, I use the following:

Now, during the update I want to update phoneNumber and address. Address may or may not be in the config file.

If SelectSingleNode is null, I would like to create a node with the given path and set its value.

How can I create the node with value at the given path?

0 投票
2 回答
504 浏览

c# - SelectSingleNode always returns null when form is deployed to the server

When I deploy an Infopath 2007 form to the SharePoint server, the SelectSingleNode always returns null but always works locally. Here is an example of the following code that is failing:

XPathNavigator vendor = payeeDS.SelectSingleNode(
"/dfs:myFields/dfs:dataFields/tns:GetVendorsResponse/tns:GetVendorsResult/NewDataSet/Vendor s[Name='" + payeeTypedName + "']", NamespaceManager);

I'm writing to the event viewer so I can confirm that the code is actually hit. The form is Administrator approved and has Full Trust.

Any ideas on what could be causing this issue?

Thanks

0 投票
2 回答
4933 浏览

c# - XmlDocument.SelectSingleNode 省略前缀和命名空间

这个问题是已回答问题的后续: XmlDocument.SelectSingleNode and prefix + xmlNamespace issue

问题是将来接收到的 xml 的命名空间前缀可能会在没有警告的情况下更改,因此我们想知道是否有任何方法可以使用 SelectSingleNode 但省略元素的前缀。

(我们知道我们可以删除传入 xml 的所有前缀,但这需要更多步骤......尽管如果提供了代码,我们会认为这是一个有效的答案......)

0 投票
1 回答
1466 浏览

xslt - 如何从 html 或 javascript 提供样式表变量值

我的问题是关于在使用 xsl 的客户端上呈现。这已经在 IE 中工作了,但我想让它在 Firefox 上工作

一、样式表(variablexsl.xsl) 这里唯一特别的是存在

<xsl:variable name="module" select="string('RES')"/>

现在,html 文件 index.html

所以最后当我点击 EDU 和 RES 按钮时,文本在 IE 中正确显示,但在任何其他浏览器中都没有。我尝试使用 document.evaluate() 但不断收到错误.. 最后转向 SO 寻求帮助!

谢谢!

解决方案: 对样式表进行以下更改,然后使用 xsltprocessor().setParameter 为我工作。

对样式表的更改:(在样式表声明之后添加一个新的 xsl:param)

然后修改<xsl:variable>声明<xsl:template match="/">如下:

火狐客户端代码

//function loadXMLDoc()使用XMLHttpRequest对象发出 ajax 请求,并返回responseXML给调用者。

0 投票
1 回答
954 浏览

c# - 从 XML 文档中选择一个节点?

所以我有一个 xmlDocument,我需要检查是否附加了信用评分。为此,我使用 xmlNodes.SelectSingleNode,然后检查 innerText。

我的问题是:其中一个节点在实际节点名称中有一个 ID 字段。所以我认为 C# 将其解释为节点名称的一部分。

//ACORD//InsuranceSvcRq//HomePolicyQuoteInqRq//PersPolicy//CreditScoreInfo//CreditScore

PersPolicy 是问题所在。该节点在文档上看起来像这样。

我想忽略 id 部分,因为它会更改每个文档并且我有数千个文档要处理。

0 投票
2 回答
3104 浏览

c# - 在 xml 文件中查找项目

我有一个如下所示的 xml 文件

我怎样才能找到特殊的月份和日期活动?例如,当月为 1 且日为 2 时,我想获得“样本 2”

0 投票
2 回答
491 浏览

c# - //@attrib 与 //name/@attrib 在 C# 中

在下面的 XML 中,我使用SelectSingleNodeofXmlDocument来提取结果值。

返回第一个“值”的值。

引发空异常。

有人可以解释发生了什么吗?

我的事件日志中的数值替换为 f00。