Xquery、Javascript 和 HTML
Posted
技术标签:
【中文标题】Xquery、Javascript 和 HTML【英文标题】:Xquery, Javascript & HTML 【发布时间】:2021-03-26 20:38:44 【问题描述】:使用 javascript 按下复选框时,我需要执行操作。为了练习,我使用了这段代码:
<!DOCTYPE html>
<html>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script>
</head>
<body>
<table>
<td>Consulta Medica</td>
<td>
<input class="form-control" id="input695" value="">
</td>
<td>
<input type="checkbox" id="695" autocomplete="off">
</td>
</table>
</body>
<script>
$(document).ready(function ()
$('#695').change(function ()
extraer = $('#input695').val();
console.log(extraer)
);
);
</script>
</html>
在 HTML 文件中使用它是可行的,但关键是我打算在 .xqy 文件中使用它,但我不能。有谁知道为什么?错误说:
第 17 列第 59 行 ...n () $('#695' 附近的静态错误 XPST0003 预期“”,发现“(” javax.xml.xquery.XQException: 预期的“”,发现“(”在 com.saxonica.xqj.SaxonXQConnection.newXQException(SaxonXQConnection.java:201) 在 com.saxonica.xqj.SaxonXQConnection.prepareExpression(SaxonXQConnection.java:113) 在 com.saxonica.xqj.SaxonXQConnection.prepareExpression(SaxonXQConnection.java:97) 在 xquery.AppXQuery.execute(AppXQuery.java:36) 在 xquery.AppXQuery.main(AppXQuery.java:19) 原因: net.sf.saxon.trans.XPathException:预期“”,发现“(”在 net.sf.saxon.expr.parser.XPathParser.grumble(XPathParser.java:311) 在 net.sf.saxon.expr.parser.XPathParser.grumble(XPathParser.java:268) 在 net.sf.saxon.expr.parser.XPathParser.grumble(XPathParser.java:255) 在 net.sf.saxon.expr.parser.XPathParser.expect(XPathParser.java:241) 在 net.sf.saxon.expr.parser.XPathParser.parseVariableReference(XPathParser.java:2407) 在 net.sf.saxon.expr.parser.XPathParser.parseBasicStep(XPathParser.java:2204) 在 net.sf.saxon.expr.parser.XPathParser.parseStepExpression(XPathParser.java:2101) 在 net.sf.saxon.expr.parser.XPathParser.parseRelativePath(XPathParser.java:2020) 在 net.sf.saxon.expr.parser.XPathParser.parsePathExpression(XPathParser.java:1982) 在 net.sf.saxon.expr.parser.XPathParser.parseSimpleMappingExpression(XPathParser.java:1996) 在 net.sf.saxon.expr.parser.XPathParser.parseUnaryExpression(XPathParser.java:1849) 在 net.sf.saxon.expr.parser.XPathParser.parseExprSingle(XPathParser.java:752) 在 net.sf.saxon.expr.parser.XPathParser.parseExpression(XPathParser.java:657) 在 net.sf.saxon.query.XQueryParser.readElementContent(XQueryParser.java:4712) 在 net.sf.saxon.query.XQueryParser.parseDirectElementConstructor(XQueryParser.java:4377) 在 net.sf.saxon.query.XQueryParser.parsePseudoXML(XQueryParser.java:4085) 在 net.sf.saxon.query.XQueryParser.readElementContent(XQueryParser.java:4672) 在 net.sf.saxon.query.XQueryParser.parseDirectElementConstructor(XQueryParser.java:4377) 在 net.sf.saxon.query.XQueryParser.parsePseudoXML(XQueryParser.java:4085) 在 net.sf.saxon.query.XQueryParser.readElementContent(XQueryParser.java:4672) 在 net.sf.saxon.query.XQueryParser.parseDirectElementConstructor(XQueryParser.java:4377) 在 net.sf.saxon.query.XQueryParser.parsePseudoXML(XQueryParser.java:4085) 在 net.sf.saxon.query.XQueryParser.readElementContent(XQueryParser.java:4672) 在 net.sf.saxon.query.XQueryParser.parseDirectElementConstructor(XQueryParser.java:4377) 在 net.sf.saxon.query.XQueryParser.parsePseudoXML(XQueryParser.java:4085) 在 net.sf.saxon.query.XQueryParser.readElementContent(XQueryParser.java:4672) 在 net.sf.saxon.query.XQueryParser.parseDirectElementConstructor(XQueryParser.java:4377) 在 net.sf.saxon.query.XQueryParser.parsePseudoXML(XQueryParser.java:4085) 在 net.sf.saxon.query.XQueryParser.readElementContent(XQueryParser.java:4672) 在 net.sf.saxon.query.XQueryParser.parseDirectElementConstructor(XQueryParser.java:4377) 在 net.sf.saxon.query.XQueryParser.parsePseudoXML(XQueryParser.java:4085) 在 net.sf.saxon.query.XQueryParser.readElementContent(XQueryParser.java:4672) 在 net.sf.saxon.query.XQueryParser.parseDirectElementConstructor(XQueryParser.java:4377) 在 net.sf.saxon.query.XQueryParser.parsePseudoXML(XQueryParser.java:4085) 在 net.sf.saxon.query.XQueryParser.readElementContent(XQueryParser.java:4672) 在 net.sf.saxon.query.XQueryParser.parseDirectElementConstructor(XQueryParser.java:4377) 在 net.sf.saxon.query.XQueryParser.parsePseudoXML(XQueryParser.java:4085) 在 net.sf.saxon.query.XQueryParser.readElementContent(XQueryParser.java:4672) 在 net.sf.saxon.query.XQueryParser.parseDirectElementConstructor(XQueryParser.java:4377) 在 net.sf.saxon.query.XQueryParser.parsePseudoXML(XQueryParser.java:4085) 在 net.sf.saxon.query.XQueryParser.parseConstructor(XQueryParser.java:3369) 在 net.sf.saxon.expr.parser.XPathParser.parseBasicStep(XPathParser.java:2344) 在 net.sf.saxon.expr.parser.XPathParser.parseStepExpression(XPathParser.java:2101) 在 net.sf.saxon.expr.parser.XPathParser.parseRelativePath(XPathParser.java:2020) 在 net.sf.saxon.expr.parser.XPathParser.parsePathExpression(XPathParser.java:1982) 在 net.sf.saxon.expr.parser.XPathParser.parseSimpleMappingExpression(XPathParser.java:1996) 在 net.sf.saxon.expr.parser.XPathParser.parseUnaryExpression(XPathParser.java:1849) 在 net.sf.saxon.expr.parser.XPathParser.parseExprSingle(XPathParser.java:752) 在 net.sf.saxon.expr.parser.XPathParser.parseExpression(XPathParser.java:657) 在 net.sf.saxon.query.XQueryParser.parseQuery(XQueryParser.java:374) 在 net.sf.saxon.query.XQueryParser.makeXQueryExpression(XQueryParser.java:171) 在 net.sf.saxon.query.StaticQueryContext.compileQuery(StaticQueryContext.java:568) 在 net.sf.saxon.query.StaticQueryContext.compileQuery(StaticQueryContext.java:630) 在 com.saxonica.xqj.SaxonXQConnection.prepareExpression(SaxonXQConnection.java:108) ... 3 更多 无法调用“javax.xml.xquery.XQResultSequence.next()” 因为“结果”为空
链接59开始于$(document).ready(function ()
请帮帮我:) 谢谢。
【问题讨论】:
【参考方案1】:使用 CDATA 部分将 Javascript 代码放入 XQuery,以防止 被视为封闭表达式的分隔符:
<script>
<![CDATA[
$(document).ready(function ()
$('#695').change(function ()
extraer = $('#input695').val();
console.log(extraer)
);
);
]]></script>
【讨论】:
你好,我试过了,它不再产生那个错误。现在的问题是页面是空的。以上是关于Xquery、Javascript 和 HTML的主要内容,如果未能解决你的问题,请参考以下文章