Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/406.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript JQuery KeyEvents被PrimeFaces';可选数据表_Javascript_Jquery_Jsf_Primefaces - Fatal编程技术网

Javascript JQuery KeyEvents被PrimeFaces';可选数据表

Javascript JQuery KeyEvents被PrimeFaces';可选数据表,javascript,jquery,jsf,primefaces,Javascript,Jquery,Jsf,Primefaces,在一个网页上,我展示了一篇文章的股票信息概述,用户可以滚动浏览。此页面的功能之一是用户必须能够扫描条形码(条形码扫描仪用作键盘),这将导航到扫描物品的库存信息 我最近对PrimeFaces数据表进行了更改,以使条目可选择(之后用户可以使用页脚中的按钮提交打印作业)。但是,我注意到,如果将此选项设置为可选择,将导致本应拾取键盘事件的jQuery事件侦听器停止正常工作。普通键仍然会被转发到jQuery事件监听器,但也用于控制数据表的键(如enter键)永远不会触发jQuery事件监听器 从技术上讲,

在一个网页上,我展示了一篇文章的股票信息概述,用户可以滚动浏览。此页面的功能之一是用户必须能够扫描条形码(条形码扫描仪用作键盘),这将导航到扫描物品的库存信息

我最近对PrimeFaces数据表进行了更改,以使条目可选择(之后用户可以使用页脚中的按钮提交打印作业)。但是,我注意到,如果将此选项设置为可选择,将导致本应拾取键盘事件的jQuery事件侦听器停止正常工作。普通键仍然会被转发到jQuery事件监听器,但也用于控制数据表的键(如enter键)永远不会触发jQuery事件监听器

从技术上讲,我不需要DataTable来使用键盘,因此如果我可以禁用它,这将是一个可行的解决方案,但我在任何地方都看不到这个选项

JSF代码:

<h:form id="article_stock_info_form">
            <p:dataTable id="stockInfoTable" var="stockRecord" value="#{locationsStockScreen.stockInfo}" stickyHeader="true" stickyTopAt=".topbar" headerClass="clearfix" emptyMessage="No stock found" selectionMode="single" selection="#{locationsStockScreen.selectedPiece}" rowKey="#{stockRecord.pieceId}">
                <f:facet name="header">
                    <div class="ui-g">
                        <div class="ui-g-8" style="padding: 0;">
                            <h:outputText value="#{locationsStockScreen.designName} - #{locationsStockScreen.articleName}" />
                        </div>
                        <div class="ui-g-4" style="padding: 0">
                            <p:commandButton action="#{dtMenuNavigator.navigateToLocationsPanel()}" value="Back" icon="fa fa-undo" style="float:right; font-size: 8pt;"/>
                        </div>
                    </div>
                </f:facet>
                <p:ajax event="rowSelect"  update="article_stock_info_form:stockInfoTable:print_stock_label_button" />
                <p:ajax event="rowUnselect" update="article_stock_info_form:stockInfoTable:print_stock_label_button" />
                <p:column headerText="Piece" style="text-align: center; width: 12%" sortBy="#{stockRecord.pieceId.id}">
                    <h:outputText value="#{stockRecord.pieceId.id}"/>
                </p:column>
                <p:column headerText="Quantity" style="text-align: center; width: 17%" sortBy="#{stockRecord.quantity}" >
                    <h:outputText value="#{stockRecord.quantity}">
                        <f:convertNumber pattern="#0.00"/>
                    </h:outputText>
                </p:column>
                <p:column headerText="Available" style="text-align: center; width: 18%" sortBy="#{stockRecord.availableQuantity}" styleClass="#{stockRecord.availableQuantity == '0.00' ? 'stock_unavailable' : 'stock_available'}" priority="2">
                    <h:outputText value="#{stockRecord.availableQuantity}">
                        <f:convertNumber pattern="#0.00"/>
                    </h:outputText>
                </p:column>
                <p:column headerText="Dyelot" style="text-align: center; width: 20%" sortBy="#{stockRecord.dyeLot}" priority="1">
                    <h:outputText value="#{stockRecord.dyeLot}"/>
                </p:column>
                <p:column headerText="Location" style="text-align: center; width: 18%" sortBy="#{stockRecord.location}">
                    <h:outputText value="#{stockRecord.location}"/>
                </p:column>
                <p:column headerText="Status" style="text-align: center; width: 15%" sortBy="#{stockRecord.status}" priority="3">
                    <h:outputText value="#{stockRecord.status}"/>
                </p:column>
                <p:column headerText="Stock Type" style="text-align: center; width: 15%" sortBy="#{stockRecord.stockType}" priority="4" styleClass="#{stockRecord.stockType == 'BLOCKED' ? 'stock_blocked' : 'stock_unrestricted'}">
                    <h:outputText value="#{stockRecord.stockType}"/>
                </p:column>
                <f:facet name="footer" id="footer">
                    <p:commandButton id="print_stock_label_button" disabled="#{empty locationsStockScreen.selectedPiece}" action="#{locationsStockScreen.printStockLabel()}" value="Print Label" icon="fa fa-print" style="width: 100%"/>
                </f:facet>
            </p:dataTable>
            <p:remoteCommand name="passBarcodeToEJB"  action="#{locationsBarcodeNavigator.processBarcode()}" id="remote_barcode_action" ajax="false"/>
        </h:form>

我正在使用PrimeFaces 6.2.22,在《用户指南》中找不到任何可以帮助我解决此问题的方法。有人知道为什么我不能拿起DataTable在jQuery中监听的按键吗?任何可行的解决方法?

最有可能是在datatable JS中的某个位置,在键盘上为选定事件捕获事件。所以它不会出现在您的文档键事件侦听器中。是的,这也是我所假设的。有没有可行的方法可以在不修改JS的情况下解决这个问题?我不是JS专家,但我觉得您必须重写datatable JS小部件方法,允许它冒泡事件或添加订阅特殊密钥事件的代码。
jQuery(document).keypress(function (event) {
    var c = event.keyCode;
    // Audio needs to be loaded by a user interaction on mobile devices in chrome (?#@*&%!)
    // So we choose to load the data during the barcode scanning -> keyPress counts as user interaction
    if (load_audio === true) {
        load_audio = false;
        valid_sound = new Audio("data:audio/wav;base64,UklGRuQKAABXQVZFZm10IBAAAAABAAEAESsAACJWAAACABAAZGF0YcAKAADL/yb/SQHp/yr9vwj4BTf9U/W29yMAmgcoB1gB+/lG+KL++AP/BuAEy/6w/GX8Nf2j+6MCoP8cBLkJegbX+TrtSfPXCAkZSBY8+3ThEeOQ/6sbLB0RBQPolebz/PMT1RKk/DDuv/EfB3kWiwvx9GDqi/Q5B6wV1Asc+Pfww/cMB2kM6gRC9j7uK/2BED0XEQUp7Q3eYPFpGGMqHhot8KPOONslCEUshx8t+jbgwedDC5Mh3gzP6Jji5PkiFl0fPAJF5A/mCgjHGz0T6Pnt3/blyAgqHQYSGPy56jzrTgXbGs4PbvnJ5ZXn1fZ7Gl4lMg4o6t3gZPHT8mETaRzkEVD3Nu2k93QKTgsr/sfxeflJBk0L7f6681n4PgnJEswFoPGc6xP7jw2hDgUBavSu+W0GnApMAO71nvj1AqwGUv/P90r+cgvcDoj/Ve1F7tYBBxRFDmX60O2s+DoMfA98/0nvyfRCCOQQRwRS8KfwigS7FRgNOPSR6DD3wg8BFD8BT+678uMH0RKsBV7xMe+DAWIQrwlH9nXxdwEHEpcMufT66Lb2wg9wFQ4Cue158SsIZxTTBhHwp+yCATMTLQy29D7rFf0XFQoVDvto5g7vVwswGGwH+O1L7C0ETxcqDQ/yE+jP+2oVAxRm+VHm5fL5D+IYNgOl6c/s3whVGnwKTuzd5W3/WhpaFPP0GeN/9dQVLBzF//Xjwel5CkocKgqj6/3nVARoHBMRC+9T4en4pRlQGgb6d+Ee77gSHx/BBFvkBuZRCC0gtQ9w66rgFf1AHfoYdPX43vXxhBY7H+YAO+E56J8MNCEUDLznw+HyATcgPhaN8Mrdn/WCGi8eEvyF3q3qXxF+IpQI2+PG4t8GViI7E2rr4NzB+QgeBB0894Hd2O8kF5MhmwFP3tDkCA1rJfMOhuUV3bAARCTeGnPx+dj98JMaAyLx/oLd5ucLEdMkdAq/4kvf3wQ8JFoWx+xD21f4Gx+xHn33D9ow7GcXlyYgBo7dN9+VCBonchVl6ofaRfnvHgsdivdc3dnvZRalIOoA0t8L5wcOKiTvDGflvd5uASYiWxjs7/DbEfUoHBUgkfuY3JDp9RLWJHUIt+G74NgGaiRHFMjqiNsu+usfJB5d9qvale1RFyYkHATf3kPjIgsiJYoQtecv3Rf+MyEBG17zntve8FkY6CD1AJvgOOg7DbMgyQpC54vjLASRH1ETX+5Y3yP5khuwG1z5sd8t7okSlx8MBc7kuuYgCAUf3Q577JTia/05G9cWRPYB4rHzQRQ6GysAH+Wl62ALwxxRCoTrYebvANEZbhJO9FTlzPcSFPoWPP1C50XwxgwNGd4F2utQ64MEmBcHDYLy9ehZ/LcTWxJn+vPpJvVkDXkUGgKH7XLwcQbrE4gI9/Ij7kb/qxDLDFn58+78+SYMrg4C/wbx0/UHB/IOYQTp9JvznwEADfcHPPkw80v9fQqUCnX9zfNW+QgH3AvlAbr1ePb4AocLpwX5+Ej19P6kCTwIsvxi9Qr75gYLCvwAA/d3+LwCdwgaBBH75fim/4IG9QRM/UP5qv2oBKkFs/+S+kb8UgIKBXcBdvws/I8A1wMyAgP+l/xt/7gCdgJD/zn9rP6TAU4COwAd/oj+tgDJAX4An/6a/mgAtAHhAPD+Yv6+/1oBNwGn/6n+Yf/VABkB/f/u/kL/jQAVAU8AJP8Q/xgA8gCkAJ7/Kf+x/3wAoQAMAIr/mf8VAF4AQgDl/7n/+//C/wkAbgBhAMj/Zv+//3cAowACAGD/g/9EAKMAMgCL/4P/EwB0ADwA0f+2//f/FgALAAAAHQAkAOT/m//d/2kAkwDi/zz/bf+kANwAGPsE+1wCiQiNBxQBlfmc9xD+VQOKBmwEg/5u/Eb8Fv2e+5oCp/8dBMMJfgbh+T3tUfPZCA0ZSBY++3PhEuOP/6wbKx0SBQLoleby/PMT1RKk/DDuv/EeB3kWiwvx9GDqi/Q5B6wV1Asc+Pfww/cMB2kM6gRC9j7uK/2BED0XEQUp7Q3eYPFpGGMqHhot8KPOONslCEUshx8t+jbgwedDC5Mh3gzP6Jji5PkiFl0fPAJF5A/mCgjHGz0T6Pnt3/blyAgqHQYSGPy56jzrTgXbGs4PbvnJ5ZXn1fZ7Gl4lMg4o6t3gZPHT8mETaRzkEVD3Nu2k93QKTgsr/sfxeflJBk0L7f6681n4PgnJEswFoPGc6xP7jw2hDgUBavSu+W0GnApMAO71nvj1AqwGUv/P90r+cgvcDoj/Ve1F7tYBBxRFDmX60O2s+DoMfA98/0nvyfRCCOQQRwRS8KfwigS7FRgNOPSR6DD3wg8BFD8BT+678uMH0RKsBV7xMe+DAWIQrwlH9nXxdwEHEpcMufT66Lb2wg9wFQ4Cue158SsIZxTTBhHwp+yCATMTLQy29D7rFf0XFQoVDvto5g7vVwswGGwH+O1L7C0ETxcqDQ/yE+jP+2oVAxRm+VHm5fL5D+IYNgOl6c/s3whVGnwKTuzd5W3/WhpaFPP0GeN/9dQVLBzF//Xjwel5CkocKgqj6/3nVARoHBMRC+9T4en4pRlQGgb6d+Ee77gSHx/BBFvkBuZRCC0gtQ9w66rgFf1AHfoYdPX43vXxhBY7H+YAO+E56J8MNCEUDLznw+HyATcgPhaN8Mrdn/WCGi8eEvyF3q3qXxF+IpQI2+PG4t8GViI7E2rr4NzB+QgeBB0894Hd2O8kF5MhmwFP3tDkCA1rJfMOhuUV3bAARCTeGnPx+dj98JMaAyLx/oLd5ucLEdMkdAq/4kvf3wQ8JFoWx+xD21f4Gx+xHn33D9ow7GcXlyYgBo7dN9+VCBonchVl6ofaRfnvHgsdivdc3dnvZRalIOoA0t8L5wcOKiTvDGflvd5uASYiWxjs7/DbEfUoHBUgkfuY3JDp9RLWJHUIt+G74NgGaiRHFMjqiNsu+usfJB5d9qvale1RFyYkHATf3kPjIgsiJYoQtecv3Rf+MyEBG17zntve8FkY6CD1AJvgOOg7DbMgyQpC54vjLASRH1ETX+5Y3yP5khuwG1z5sd8t7okSlx8MBc7kuuYgCAUf3Q577JTia/05G9cWRPYB4rHzQRQ6GysAH+Wl62ALwxxRCoTrYebvANEZbhJO9FTlzPcSFPoWPP1C50XwxgwNGd4F2utQ64MEmBcHDYLy9ehZ/LcTWxJn+vPpJvVkDXkUGgKH7XLwcQbrE4gI9/Ij7kb/qxDLDFn58+78+SYMrg4C/wbx0/UHB/IOYQTp9JvznwEADfcHPPkw80v9fQqUCnX9zfNW+QgH3AvlAbr1ePb4AocLpwX5+Ej19P6kCTwIsvxi9Qr75gYLCvwAA/d3+LwCdwgaBBH75fim/4IG9QRM/UP5qv2oBKkFs/+S+kb8UgIKBXcBdvws/I8A1wMyAgP+l/xt/7gCdgJD/zn9rP6TAU4COwAd/oj+tgDJAX4An/6a/mgAtAHhAPD+Yv6+/1oBNwGn/6n+Yf/VABkB/f/u/kL/jQAVAU8AJP8Q/xgA8gCkAJ7/Kf+x/3wAoQAMAIr/mf8VAF4AQgDl/7n/+//B/wkAbgBhAMj/Zv+//3cAowACAGD/hP9EAKMAMQCL/4L/FAB0AD0A0P+3//b/FwAKAAEAHAAmAOL/nv/a/20AjwDo/zT/ef+QAA8B");
        valid_sound.preload = true;
        console.log("loading valid sound from base64 string in javascript");
        // valid_sound.src = $("param[name='valid_scan_sound']").attr("value");
        valid_sound.load();
        invalid_sound = new Audio("data:audio/wav;base64,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");
        invalid_sound.preload = true;
        console.log("loading invalid sound from base64 string in javascript");
        invalid_sound.load();
    }


    if (c == 13) {
        passBarcodeToEJB([{
            name: 'barcode',
            value: buffer
        }]);
        buffer = "";

    }
    else {
        buffer += String.fromCharCode(c);
    }

})
;