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 struts2选项TransferSelect从数据库检索和显示值_Javascript_Java_Jquery_Jsp_Struts2 - Fatal编程技术网

Javascript struts2选项TransferSelect从数据库检索和显示值

Javascript struts2选项TransferSelect从数据库检索和显示值,javascript,java,jquery,jsp,struts2,Javascript,Java,Jquery,Jsp,Struts2,在jsp页面中,我有一个用于在左侧和右侧之间交换值的,还有一个要保存的提交按钮 我运行程序,它实际上可以保存右边的值。但是,它不会在此处显示保存的值 我正在考虑使用javascript并在中使用onchange事件来实现这一点 <script> function show(){ const list = document.getElementById("selectedValues"); for (var i = 0;

在jsp页面中,我有一个用于在左侧和右侧之间交换值的
,还有一个要保存的提交按钮


我运行程序,它实际上可以保存右边的值。但是,它不会在此处显示保存的值

我正在考虑使用javascript并在
中使用
onchange
事件来实现这一点

<script>
    function show(){
        const list = document.getElementById("selectedValues");
        for (var i = 0; i < list.options.length; i++) {
        //seems something not correct in this part but I am not sure how solve in this way 
            list.options[i].selected = true;
        }
        return true;
    }
</script>

<s:optiontransferselect 
    allowUpDownOnLeft="false"
    allowUpDownOnRight="false"
    allowSelectAll="false"
    allowAddAllToLeft="false"
    allowAddAllToRight="false"
    addToRightLabel="Go to right"
    addToLeftLabel="Go to left" 
    leftTitle="Left side values"
    headerKey="0"
    name="option"
    list= "optionList"
    rightTitle="Right side values"
    doubleHeaderKey="0"
    doubleList="selectedOptionList" 
    doubleName="selectOption"
    doubleId="selectedValues"
    onchange ="show()" <!-- onchange seems not work here -->
> 
</s:optiontransferselect>
在数据库中,我可以看到保存的值,因此我想知道如何让
选项TransferSelect
显示保存的值

另一次更新

在提交之前,我尝试使用一个按钮调用javascript函数来显示
selectedvalue


函数testshow(){
var value=document.getElementById(“selectedValues”);

对于(var i=0;i我认为有两件事你需要知道才能解决你的问题:

  • Struts操作的生命周期
  • 选项TransferSelect
    的实际工作方式

  • Struts操作的生命周期 我从这开始,因为这可能已经解决了你的问题


    一个是字符串,第二个是列表。?@AleksandrM,两者都是
    ArrayList()
    @AleksandrM,我更新了内容,我想在这里表达我对
    optiontransferselect
    的想法。但是我以前没有使用过它,如果我的想法不正确或无法实现,请告诉我,@AleksandrM,
    optionList=new ArrayList();
    是左侧的
    optiontransferselect
    ,它包含供用户选择并移动到右侧的值。
    selectedOptionList=new ArrayList();
    是右边的
    optiontransferselect
    ,如果用户从optionList移动,它会显示在这里,并且它可以将值保存到optionList。我的意思是值可以在左边和右边之间交换。提交按钮将保存右边的框值,我尝试在打开jsp页面时让框显示保存的值d您的问题,问题只出现在显示的页面上?在这种情况下,您是否可以提供呈现的HTML/javascript(仅相关部分)PS:一个标记,它只需将值从左向右移动即可提供选择语义(可以命名为selectByTransfer,例如selectByTransfer)似乎不是Struts提供的-至少我没有找到它。答案中的方法使用Struts版本2.5.26、JDK 11和jetty maven插件10.0.3进行了测试。