It's a bit hacky but it works...

:)

Richard


On Thu, Dec 12, 2013 at 9:48 AM, Richard Vézina <ml.richard.vez...@gmail.com
> wrote:

> Don't bother with the php thing...
>
> Just look the data structure of the select...
>
> Here what I do to restore proper order on update form :
>
> controller_view_js += """
> var ordered_values = ''%s'';
> $(document).ready(function() {
>     if(ordered_values != "None") {
>         $.each(ordered_values, function(i, val) {
>             $("select[name=field_name]").append("<option
> value=\'"+ordered_values[i]+"\'>"+
>                 $("select[name=field_name]
> option[value="+ordered_values[i]+"]").text()+"</option>");
>         });
>         $("select[name=field_name] option:selected").remove();
>         $.each(ordered_values, function(i, val) {
>             $("select[name=field_name]
> option[value="+ordered_values[i]+"]").attr("selected", "selected");
>         });
>     };
> });""" % [int(ID) for ID in ordered_values_query]
>
> controller_view_js is a variable containing a piece of jquery that I pass
> to the view from the controller... What it does put the options into the
> proper order or how they were ordered at the input... All this is because
> web2py don't use "ol" list out of the box... So I manage thing to not
> require ol.
>
> The ordered_values_query contain the value of the field field_name for the
> given record...
>
> I had to set a representation like this too :
>
> represent=lambda values, row: ', '.join(map(lambda id:
> db.ref_referenced_table(id).represent_field, values)) if values != [] or
> None else T('N/A')
>
> Hope it helps.
>
> Richard
>
>
> On Thu, Dec 12, 2013 at 4:07 AM, BlueShadow <kevin.bet...@gmail.com>wrote:
>
>> thanks for your offer I'm working my way through the example code but my
>> biggest problem is that php site. I don't know php. But from what I get
>> from the php code is that all the sample cities need to be in an unordered
>> list environment <ul><li></li>...</ul>
>> but this form part of the bsmselect example really confuses me.
>>
>> <h1>Example 1: Typical Usage</h1>
>> <form action="./example_results.php" method="post">
>>
>>     <label for="cities1">What are your favorite cities?</label>
>>     <select id="cities1" multiple="multiple" name="cities[]" title="Click to 
>> Select a City" class="sminit">
>>       <option>Amsterdam</option>
>>     </select>
>>     <p><input type="submit" name="submit" value="submit" /></p>
>>   </form>
>>
>>
>> especially the php file in form action=""
>> <?php
>>
>> if(!empty($_POST['submit'])) {
>>
>>   echo "<html>\n<body style='width: 400px; margin: 2em auto;
>> font-family: Arial;'>";
>>
>>   if(!empty($_POST['cities'])) {
>>
>>     echo "\n<p><strong>You selected the following
>> cities:</strong></p>\n<ul>";
>>
>>     foreach($_POST['cities'] as $city) {
>>
>>       // exclude any items with chars we don't want, just in case
>> someone is playing
>>       if(!preg_match('/^[-A-Z0-9\., ]+$/iD', $city)) continue;
>>
>>       // print the city
>>       echo "\n\t<li>" . htmlspecialchars($city) . "</li>";
>>     }
>>
>>     echo "\n</ul>";
>>
>>   } else {
>>     echo "\n<p>No items selected</p>";
>>   }
>>
>>   echo "\n<p><a href='index.html'>Try Again?</a></p>";
>>
>>   echo "\n</body>\n</html>";
>>
>> } else {
>>   // if someone arrived here not having started at example.html
>>   // then show example.html instead
>>   require("index.html");
>>
>> }
>>
>>
>> It seems to me that there is an entire html document in this php file.
>>
>>  --
>> Resources:
>> - http://web2py.com
>> - http://web2py.com/book (Documentation)
>> - http://github.com/web2py/web2py (Source code)
>> - https://code.google.com/p/web2py/issues/list (Report Issues)
>> ---
>> You received this message because you are subscribed to the Google Groups
>> "web2py-users" group.
>> To unsubscribe from this group and stop receiving emails from it, send an
>> email to web2py+unsubscr...@googlegroups.com.
>> For more options, visit https://groups.google.com/groups/opt_out.
>>
>
>

-- 
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
--- 
You received this message because you are subscribed to the Google Groups 
"web2py-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to web2py+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to