Seleccionar en una llista desplegable mentre s’escriu, en Explorer < 7

Un exemple de com fer que Explorer versió anterior a la 7 (perquè la 7 ja ho fa) puga seleccionar un element d’una llista desplegable mentre s’escriu.


<html>
 <head>
  <script type="text/javascript">

   var fnd = "";
   var aux = -1;
   var saltaonchange = ’s’;

   function salta() {
    if (saltaonchange == ’s’) {
     alert(’hh’);
    }
   }   
  </script>

  <!–[if lt IE 7]>
  <script type="text/javascript">

   window.onload = function () {

    document.getElementById("desplegable").onblur = function() {
     var sel = this;

     if (aux != -1 && sel.selectedIndex != aux) {
      salta();
      aux = ”; 
     }
    } 

    document.getElementById("desplegable").onkeypress = function() {
     var k;
     var sel = this;

     k = String.fromCharCode(event.keyCode);

     if (k < " " || k > "~") return true;
     if (k == " ") fnd = "";
       else fnd += k.toUpperCase();
     for (var i=0; i<sel.options.length; i++) {

      if (fnd == sel.options[i].text.toUpperCase().substring(0,fnd.length)) {
       if (aux == -1) aux = sel.selectedIndex;
       sel.options.selectedIndex = 1;
       saltaonchange = ‘n’;
       return false;
       }
      }
     }
    }

 </script>
 <![endif]–>  

<html>

 </head>
 <body>
   <select id="desplegable" onchange="salta();" onfocus="fnd=”; aux=-1; saltaonchange=’s’">
   <option></option>
   <option>aaa</option>
   <option>bab</option>
   <option>bac</option>
   <option>cba</option>
   <option>cbb</option>
   <option>xbc</option>
   </select>
 </body>
</html>

salut.




Comentaris

Incloure codi HTML i PHP en els posts de Wordpress

Amb la intenció de no incloure (per ara) un plugin específic per afegir codi en els posts, les sol·lucions que ens queden per a incloure HTML o PHP són poques. Podríem incloure el text en un ‘textarea’, o podríem substituir els caràcters especials per les corresponents entitats…

Per fer açò últim, hi ha programes i pàgines web que ens permeten fer la traducció del codi a les entitats corresponents, per exemple:

http://chuano.net/chuano/util/convsimbolos.php

salut

Comentaris (1)

Arrancar amb GRUB i canviar la contrasenya de root

Els passos són els següents:

1.- Quan ens apareix la finestreta per a seleccionar el Sistema Operatiu, triem el que ens interessa i premem ‘e’.

2.- En la següent finestra veurem diverses línies, les quals són els arguments amb els què inicia el Sistema Operatiu. Ens coloquem en el que comença per ‘Kernel’ i premem ‘e’.

3.- Al final de la línia afegim ‘ rw init=/bin/bash‘ i premem ‘enter’. Després premem ‘b’ per a iniciar el sistema.

4.- Per a canviar la contrasenya, hem d’escriure ‘passwd root‘. També podem crear un nou usuari, amb:

useradd -d /home/userX -s /bin/bash userX

passwd userX

cd /home

mkdir userX

chmod 755 userX

Hi ha la possibilitat de protegir GRUB contra aquesta vulnerabilitat.

salut

Comentaris

Afegir la possibilitat de triar l’idioma amb langSwitch

Per a treure la llista d’idiomes en langSwitch, i poder fer clic, hem d’afegir el següent troç de codi de php:

if(function_exists('langswitch_list_langs'))
{ langswitch_list_langs(false, true, 'li'); }

I, amb la versió 1.08 de langSwitch, hem de modificar la funció langswitch_list_langs, perquè puguem passar-li un altre paràmetre, i que no pinte les possibilitats amb ‘li’ (com una llista), ja que a voltes no ens interessa aquesta presentació.

salut

Comentaris

Alguns comandaments útils de Windows (XP).

Estos són tres comandaments útils que s’utilitzen amb certa freqüència. Estan provats en Windows XP. S’han d’executar en la línia de comandaments o en l’intèrpret de comandaments (cmd).

  • msconfig: Utilitat de configuració del sistema què, entre altres coses, ens permet configurar els programes que s’iniciaran amb Windows i modificar, activar i desactivar certs arxius de configuració del sistema (system.ini, win.ini, config.sys, autoexec.bat i winstart.bat).
  • systeminfo: Mostra informació de configuració del equip i el sistema operatiu, com la identificació del producte, propietats del Hardware (memòria, tarjetes de xarxa,…), informació de seguretat, propietats del Sistema operatiu.
  • dxdiag: Configuració i diagnòstic de problemes del Direct X.

salut

Comentaris

Com fer una select sobre una col·lecció Oracle

Per Col·lecció, ens referim a un VARRAY o a una Nested Table. Necessitarem crear-nos la col·lecció en la Base de Dades, basada en un objecte que també haurem de crear (amb la versió actual, 10g, només podem crear-los en la BD, no en un bloc PL/SQL ni subprograma ni Paquet).

Un exemple podria ser:

create or replace type objecte as object
(
id number(4),
nom varchar2(10)
);

create or replace type coleccio is table of objecte;

1. declare
2.  v_tab coleccio := coleccio(objecte(1, 'primer'));
3.  cursor p is
4.   select *
5.    from table(cast(v_tab as coleccio));
6. begin
7.  v_tab.extend();
8.  v_tab(v_tab.last):=objecte(2, 'segon');
9.  for i in p loop
10.  dbms_output.put_line(i.id ||' '|| i.nom);
11. end loop;
12.end;

Salut

Comentaris

Problema amb el page.html del tema del wordpress de la Banda

A l’hora de veure pàgines estàtiques en el wordpress de la banda, donava un problema. Simplement afegir un ; destràs de:

&cat_id = 6

salut

Comentaris

Problema amb el innerHTML d’una ’select’… en explorer

Amb el explorer no pots utilitzar el innerHTML per a canviar les opciones d’una llista d’HTML, amb el Firefox sí. La solució que es proposa des de Microsoft és utilitzar un DIV que envolte a la llista, i utilitzar innerHTML des del DIV.

http://support.microsoft.com/kb/276228/es

Comentaris

Algunes formes de crear Llistes desplegables amb javascript

Hi ha més maneres, però ens centrarem en la forma de crear-les insertant opció per opció, i no tot a la vegada, com podríem fer amb innerHTML o creant un Array.

La manera clásica, al menys per a mi, és creant objectes:

myList = document.forms['formular'].elements['box'];

optionNew = new Option(1,1);
optionNew2 = new Option(2,2);
optionNew3 = new Option(3,3);

myList.options[0] = optionNew;
myList.options[1] = optionNew2;
myList.options[2] = optionNew2;

Aquesta és compatible, al menys, amb Explorer i Firefox. També podríem utilitzar appendChild, però timdrem un problema de compatibilitat amb Explorer. El codi deuria de ser així:

optionNew = new Option(1,1);
optionNew2 = new Option(2,2);
optionNew3 = new Option(3,3);

myList.appendChild(optionNew);
myList.appendChild(optionNew2);
myList.appendChild(optionNew3);

Perquè ens funcione també amb Explorer, hauríem de crear elements en el DOM:

optionNew = document.createElement('option');
optionNew2 = document.createElement('option');
optionNew3 = document.createElement('option');
optionNew.value = 1;
optionNew2.value = 2;
optionNew3.value = 3;
optionNew.innerHTML = '1';
optionNew2.innerHTML = '2';
optionNew3.innerHTML = '3';

myList.appendChild(optionNew);
myList.appendChild(optionNew2);
myList.appendChild(optionNew3);

Ara ens quedaria veure la forma d’afegir algun que altre optGroup. Per exemple:

var optgroup = document.createElement('optgroup');
optgroup.label = "Prueba1";

var optgroup2 = document.createElement('optgroup');
optgroup2.label = "Prueba2";

optionNew = document.createElement('option');
optionNew2 = document.createElement('option');
optionNew3 = document.createElement('option');
optionNew.value = 1;
optionNew2.value = 2;
optionNew3.value = 3;
optionNew.innerHTML = '1';
optionNew2.innerHTML = '2';
optionNew3.innerHTML = '3';

optgroup.appendChild(optionNew);
optgroup2.appendChild(optionNew2);
optgroup2.appendChild(optionNew3);

myList.appendChild(optgroup);
myList.appendChild(optgroup2);

Podem fer més accions sobre les opcions, però ja ho veurem més endavant…

Comentaris

Fer que wordpress mostre els events futurs

Modificar el fitxer wp-includes/query.php:

  • En la línia 969 afegir una condició OR post_status='future'
  • En la línia 1084 afegir if ( 'future' == $status) { $this->is_preview = true; }, més els {} necessaris

Hi ha que modificar el sidebar de tema, perquè apareguen algunes coses bé. Per exemple, perquè aparega un DIV, amb els posts futurs, he afegit un troç de codi, molt paregut al que ja mostra els posts més recents, pero ara he canviat açò:

$posts = get_posts('numberposts=5&offset=1');

per açò:

$posts = get_posts('post_status=future');

Per que apareguen els posts futurs en les agrupacions per mes, he modificat el fitxer wp-includes/general-template.php, en la línia 358 he afegit una condició OR post_status='future'.
. Per cert, el meu template utilitzava la funció get_archives() que ya està deprecated, i l’he canviat per wp_get_archives().

La funció get_calendar() també está en wp-includes/general-template.php. Aquí no hi ha més remei que buscar tortes les selects que apareixen en la funció i possar la condició OR post_status='future'. A més de mirar-les totes, s’han de comprovar i, on hi estiga alguna condició de < currentTime o alguna cosa pareguda, haurem de llevar-la.

Comentaris