因此,我有一个XSLT表单,它从XML表单获取数据并将其显示给我。我想通过类名称获取元素的值,但它始终返回undefined。这里是XSLTcodeXSLT jquery classname和ASP.net
<!-- generic input template -->
<xsl:template match="DataField" priority="0">
<td colspan="{DisplayOptions/@ColSpan}" location="{DisplayOptions/@Column}">
<xsl:value-of select="FieldOptions/@DisplayName"/>
<br/>
<input type="{@ControlType}" name="{@Name}" onchange="textBlur(event)" />
<xsl:apply-templates select="SubDataFields"/>
</td>
</xsl:template>
,我已经尝试了两种方法的代码段jQuery和使用文档
function textBlur(e) {
//this gives me the value and works
var personInfo = e.target.value;
var personField = e.target.name;
//these two return undefined
var elements = document.getElementsByClassName("personField");
console.log($(elements).val());
console.log($("."+personField).val());
}
我在做什么错在这里? personField是我想要的元素的名称。由于XSLT为我生成类名。所以我所做的就是使用事件来获取元素的名称和值,以确认我使用的是正确的名称并获取了值,然后我尝试再次使用jquery和名称获取元素的值。
我不明白你试图在这里展示。您尝试通过class personField获取元素,但是您的xslt示例不会生成此类。我在这里错过什么? –
@ hr_117 personField是我想要的元素的名称。由于XSLT为我生成类名。所以我所做的就是使用事件来获取元素的名称和值,以确认我使用的是正确的名称,然后尝试再次使用jquery和名称获取元素的值。 –