After the form is submitted, the returned HTML page is re-rendered, and neither the value nor the selectedIndex attribute of the SELECT control can make the drop-down box retain the state before the form is submitted. Copy code The code is as follows:<SELECT id="idState" style="width:150" name="state" selectedIndex="$!{state}"> <OPTION value="">All</OPTION> <OPTION value="1">Pass</OPTION> <OPTION value="2">Not passed</OPTION> <OPTION value="3">Pending</OPTION> </SELECT> A temporary solution is to add a script at the end of the vm file to assign a value to the drop-down box : Copy code The code is as follows:<script> $('#idState').val('$!{state}'); </script> Another solution is to set a default selection : Copy code The code is as follows:<SELECT id="idState" style="width:150" name="state" value="$!{state}"> <OPTION value="">All</OPTION> <OPTION value="1">Pass</OPTION> <OPTION value="2" SELECTED>Not passed</OPTION> <OPTION value="3">Pending</OPTION> </SELECT> The VTL way of writing is : Copy code The code is as follows:<SELECT id="idState" style="width:150" name="state" value="$!{state}"> <OPTION value="">All</OPTION> <OPTION #if($!{state} == 1) SELECTED #end value="1">Pass</OPTION> <OPTION #if($!{state} == 2) SELECTED #end value="2">Not passed</OPTION> <OPTION #if($!{state} == 3) SELECTED #end value="3">To be processed</OPTION> </SELECT> It should be noted here that when performing == comparison, Velocity distinguishes between types. If you compare with the strings "1", "2", and "3", you will always get false. Comparison issues in velocity <br />For velocity, comparisons, especially those involving inequality comparisons (greater than or less than), are difficult to implement. Now I want to display the file size on the page in categories (Bytes, MB, GB), which involves the problem of comparing filesize sizes. Is there a better way to achieve this? For example, the following code: Copy code The code is as follows:#if ($filesize > 1024 && $filesize < 1048567) #set($ksize = $filesize%1024) <div class="mlt">File Size: $ksize KB #elseif ($filesize > 1048567 && $filesize < 1073731824) #set($msize=$filesize%1048567) <div class="mlt">File Size: $msize MB #elseif ($filesize > 1073731824) #($gsize=$filesize%1073731824) <div class="mlt">File Size: $gsize GB #else <div class="mlt">File Size: $filesize Bytes #end Copy code The code is as follows:<PRE class=html name="code"><SPAN style="FONT-FAMILY: Arial, Helvetica, sans-serif"><SPAN style="WHITE-SPACE: normal"> </SPAN></SPAN></PRE> <PRE></PRE> <PRE></PRE> <PRE></PRE> |
<<: Pagination Examples and Good Practices
>>: How to successfully retrieve VMware Esxi root password after forgetting it
Problem Description Recently, a host reported the...
1 Download and prepare First, we need to download...
This article example shares the specific code of ...
#String concatenation concat(s1,s2); concatenate ...
Table of contents Main issues solved 1. The data ...
The version of vsCode has been updated in recent ...
Table of contents map filter some every findIndex...
Recently, when I turned on my computer, I saw tha...
1. Use ansible's playbook to automatically in...
Table of contents Overview Code Implementation Pa...
Tip: In MySQL, we often need to create and delete...
<br />Scientifically Design Your Website: 23...
This article shares the specific code of Bootstra...
Table of contents Primary key index Create indexe...
To put it simply, website construction is about &q...