Search code examples
htmljqueryxmlxquery

Xquery, Javascript & HTML


I need to do actions when pressing the checkbox with Javascript. To practice, I used this code:

<!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>

Using it in an HTML file works, but the point is that I intend to use it in an .xqy file and I can't. Does anyone know why? The error says:

Static error near {...n () { $('#695'} on line 59 at column 17 of
XPST0003 expected "", found "(" javax.xml.xquery.XQException: expected "", found "(" at com.saxonica.xqj.SaxonXQConnection.newXQException(SaxonXQConnection.java:201) at com.saxonica.xqj.SaxonXQConnection.prepareExpression(SaxonXQConnection.java:113) at com.saxonica.xqj.SaxonXQConnection.prepareExpression(SaxonXQConnection.java:97) at xquery.AppXQuery.execute(AppXQuery.java:36) at xquery.AppXQuery.main(AppXQuery.java:19) Caused by: net.sf.saxon.trans.XPathException: expected "", found "(" at net.sf.saxon.expr.parser.XPathParser.grumble(XPathParser.java:311) at net.sf.saxon.expr.parser.XPathParser.grumble(XPathParser.java:268) at net.sf.saxon.expr.parser.XPathParser.grumble(XPathParser.java:255) at net.sf.saxon.expr.parser.XPathParser.expect(XPathParser.java:241) at net.sf.saxon.expr.parser.XPathParser.parseVariableReference(XPathParser.java:2407) at net.sf.saxon.expr.parser.XPathParser.parseBasicStep(XPathParser.java:2204) at net.sf.saxon.expr.parser.XPathParser.parseStepExpression(XPathParser.java:2101) at net.sf.saxon.expr.parser.XPathParser.parseRelativePath(XPathParser.java:2020) at net.sf.saxon.expr.parser.XPathParser.parsePathExpression(XPathParser.java:1982) at net.sf.saxon.expr.parser.XPathParser.parseSimpleMappingExpression(XPathParser.java:1996) at net.sf.saxon.expr.parser.XPathParser.parseUnaryExpression(XPathParser.java:1849) at net.sf.saxon.expr.parser.XPathParser.parseExprSingle(XPathParser.java:752) at net.sf.saxon.expr.parser.XPathParser.parseExpression(XPathParser.java:657) at net.sf.saxon.query.XQueryParser.readElementContent(XQueryParser.java:4712) at net.sf.saxon.query.XQueryParser.parseDirectElementConstructor(XQueryParser.java:4377) at net.sf.saxon.query.XQueryParser.parsePseudoXML(XQueryParser.java:4085) at net.sf.saxon.query.XQueryParser.readElementContent(XQueryParser.java:4672) at net.sf.saxon.query.XQueryParser.parseDirectElementConstructor(XQueryParser.java:4377) at net.sf.saxon.query.XQueryParser.parsePseudoXML(XQueryParser.java:4085) at net.sf.saxon.query.XQueryParser.readElementContent(XQueryParser.java:4672) at net.sf.saxon.query.XQueryParser.parseDirectElementConstructor(XQueryParser.java:4377) at net.sf.saxon.query.XQueryParser.parsePseudoXML(XQueryParser.java:4085) at net.sf.saxon.query.XQueryParser.readElementContent(XQueryParser.java:4672) at net.sf.saxon.query.XQueryParser.parseDirectElementConstructor(XQueryParser.java:4377) at net.sf.saxon.query.XQueryParser.parsePseudoXML(XQueryParser.java:4085) at net.sf.saxon.query.XQueryParser.readElementContent(XQueryParser.java:4672) at net.sf.saxon.query.XQueryParser.parseDirectElementConstructor(XQueryParser.java:4377) at net.sf.saxon.query.XQueryParser.parsePseudoXML(XQueryParser.java:4085) at net.sf.saxon.query.XQueryParser.readElementContent(XQueryParser.java:4672) at net.sf.saxon.query.XQueryParser.parseDirectElementConstructor(XQueryParser.java:4377) at net.sf.saxon.query.XQueryParser.parsePseudoXML(XQueryParser.java:4085) at net.sf.saxon.query.XQueryParser.readElementContent(XQueryParser.java:4672) at net.sf.saxon.query.XQueryParser.parseDirectElementConstructor(XQueryParser.java:4377) at net.sf.saxon.query.XQueryParser.parsePseudoXML(XQueryParser.java:4085) at net.sf.saxon.query.XQueryParser.readElementContent(XQueryParser.java:4672) at net.sf.saxon.query.XQueryParser.parseDirectElementConstructor(XQueryParser.java:4377) at net.sf.saxon.query.XQueryParser.parsePseudoXML(XQueryParser.java:4085) at net.sf.saxon.query.XQueryParser.readElementContent(XQueryParser.java:4672) at net.sf.saxon.query.XQueryParser.parseDirectElementConstructor(XQueryParser.java:4377) at net.sf.saxon.query.XQueryParser.parsePseudoXML(XQueryParser.java:4085) at net.sf.saxon.query.XQueryParser.parseConstructor(XQueryParser.java:3369) at net.sf.saxon.expr.parser.XPathParser.parseBasicStep(XPathParser.java:2344) at net.sf.saxon.expr.parser.XPathParser.parseStepExpression(XPathParser.java:2101) at net.sf.saxon.expr.parser.XPathParser.parseRelativePath(XPathParser.java:2020) at net.sf.saxon.expr.parser.XPathParser.parsePathExpression(XPathParser.java:1982) at net.sf.saxon.expr.parser.XPathParser.parseSimpleMappingExpression(XPathParser.java:1996) at net.sf.saxon.expr.parser.XPathParser.parseUnaryExpression(XPathParser.java:1849) at net.sf.saxon.expr.parser.XPathParser.parseExprSingle(XPathParser.java:752) at net.sf.saxon.expr.parser.XPathParser.parseExpression(XPathParser.java:657) at net.sf.saxon.query.XQueryParser.parseQuery(XQueryParser.java:374) at net.sf.saxon.query.XQueryParser.makeXQueryExpression(XQueryParser.java:171) at net.sf.saxon.query.StaticQueryContext.compileQuery(StaticQueryContext.java:568) at net.sf.saxon.query.StaticQueryContext.compileQuery(StaticQueryContext.java:630) at com.saxonica.xqj.SaxonXQConnection.prepareExpression(SaxonXQConnection.java:108) ... 3 more Cannot invoke "javax.xml.xquery.XQResultSequence.next()" because "result" is null

The link 59 starts in $(document).ready(function () {

Please help me :) Thanks.


Solution

  • Use a CDATA section to put the Javascript code into the XQuery, to prevent the {} from being seen as delimiters of enclosed expressions:

        <script>
    <![CDATA[
            $(document).ready(function () {
                $('#695').change(function () {
                    extraer = $('#input695').val();
                    console.log(extraer)
                });
            });
    
        ]]></script>