我正在尝试使用OrderList
PrimeFaces v 3.5 库。
<p:orderList
id="outputMapId"
value="#{JobMgmtBean.selectedStreamNames}"
var="stream"
valueChangeListener="#{JobMgmtBean.listenerListChanged}"
controlsLocation="none"
itemLabel="#{stream}"
itemValue="#{stream}">
</p:orderList>
和
public void listenerListChanged( )
{
..
}
拖放项目后,我似乎无法获得值更改事件,listenerListChanged
从未执行过。我究竟做错了什么?
编辑: 尝试这个脚本:
<h:head>
<meta http-equiv="content-type" content="text/html;charset=iso-8859-1"/>
<title>#{txt.TXT_TITLE_TRANSCODING}</title>
<link rel="stylesheet" type="text/css" href="scripts/styles.css"/>
<link rel="shortcut icon" href="./images/favicon.ico"></link>
<script src="./scripts/scripts.js" type="text/javascript"/>
<script>
$(document).ready(function() {
console.log("Entered script!");
var isDragging = false;
$(".ui-orderlist-item")
.mousedown(function () {
$(window).mousemove(function () {
isDragging = true;
console.log("Mouse down!");
});
})
.mouseup(function () {
var wasDragging = isDragging;
isDragging = false;
console.log("Mouse up!");
triggerBackEnd();
});
});
</script>
</h:head>
<h:body>
<f:view>
<h:form>
<p:remoteCommand name="triggerBackEnd" actionListener="#{JobMgmtBean.listenerListChanged}"></p:remoteCommand>
...
但这仍然行不通。我从来没有得到console.log("Mouse down!");
。
我正在使用 PrimeFaces 3.5.0 附带的 jQuery v1.8.3。