Allow list attribute to contain a URI pointing to an innerHTML-like fragment

View: New views
2 Messages — Rating Filter:   Alert me  

Allow list attribute to contain a URI pointing to an innerHTML-like fragment

by Ric Hardacre-4 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Allow the ability to directly embed or set via javascript a URI that when
polled with a HTTP GET request will return the HTML fragment that would
make up the list of OPTION elements as if it were a physical DATALIST that
had its contents set via innerHTML.

<input type="text" id="fruit"
list="http://example.com/fragments/fruit-suggestions.htm" >


This could be a full GET including a search string, allowing search engine
style suggest-as-you-type (performance considerations aside for this
example!):

<input type="text" id="fruit" onkeyup="fruit_list(this)" >
<script>
function fruit_list( elem )
{
  elem.list = "http://example.com/fragments/fruit-suggestions.php?value="
+ elem.value;
}
</script>


Standard GET rules would apply, specifically allowing the returned
fragment to be cached locally.



The fragment returned by the server would look like the following:

"<option>Apples</option><option>Bananas</option><option>Oranges</option>"



This could feasibly be used to solve the long standing SELECT that fills
another SELECT dilemma

<select id="make" onchange="select_make(this)">...</select>
<select id="model">...</select>
<script>
  function select_make( elem )
  {
    document.getElementById("model").options =
"http://example.com/fragments/models.php?make=" + elem.value;
  }
</script>




Ric Hardacre
cyclomedia.co.uk




Re: Allow list attribute to contain a URI pointing to an innerHTML-like fragment

by Ian Hickson :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

On Wed, 2 Sep 2009, Ric Hardacre wrote:

>
> Allow the ability to directly embed or set via javascript a URI that when
> polled with a HTTP GET request will return the HTML fragment that would
> make up the list of OPTION elements as if it were a physical DATALIST that
> had its contents set via innerHTML.
>
> <input type="text" id="fruit"
> list="http://example.com/fragments/fruit-suggestions.htm" >
>
>
> This could be a full GET including a search string, allowing search engine
> style suggest-as-you-type (performance considerations aside for this
> example!):
>
> <input type="text" id="fruit" onkeyup="fruit_list(this)" >
> <script>
> function fruit_list( elem )
> {
>   elem.list = "http://example.com/fragments/fruit-suggestions.php?value="
> + elem.value;
> }
> </script>
>
>
> Standard GET rules would apply, specifically allowing the returned
> fragment to be cached locally.
>
>
>
> The fragment returned by the server would look like the following:
>
> "<option>Apples</option><option>Bananas</option><option>Oranges</option>"
>
>
>
> This could feasibly be used to solve the long standing SELECT that fills
> another SELECT dilemma
>
> <select id="make" onchange="select_make(this)">...</select>
> <select id="model">...</select>
> <script>
>   function select_make( elem )
>   {
>     document.getElementById("model").options =
> "http://example.com/fragments/models.php?make=" + elem.value;
>   }
> </script>

We actually had something like this earlier in the spec's lifetime, but we
removed it because it has a number of difficult problems to deal with and
was not compelling enough to justify.

--
Ian Hickson               U+1047E                )\._.,--....,'``.    fL
http://ln.hixie.ch/       U+263A                /,   _.. \   _\  ;`._ ,.
Things that are impossible just take longer.   `._.-(,_..'--(,_..'`-.;.'