Pregunta

Tengo una aplicación basada en PHP que necesito trabajar tanto en una PC normal como en una tableta Samsung Galaxy.

La funcionalidad en ambos dispositivos funciona correctamente, sin embargo, es solo el formato y la presentación de los datos lo que es diferente.

Mi aplicación extrae datos de una base de datos MySQL cuando el usuario ingresa un número de producto. Estos datos se muestran en la misma fila que el código de producto insertado por el usuario. En Internet Explorer funciona al 100%, sin embargo, en la tableta, una vez que el usuario ingresa un código de usuario, toda la fila se condensa en la primera celda.

He adjunto imágenes para tratar de transmitir cuál es el problema, por favor, encuentrelas en la parte inferior de Qustion.

Mi código relevante es:

En el encabezado:

<script type="text/javascript"> 
  function showUser(userNumber, str) 
  { 
  document.getElementById("r"+(userNumber+1)).style.display="block";  
    if (str=="") 
    { 
      document.getElementById("txtHint" + userNumber).innerHTML=""; 
      return; 
    }   
    if (window.XMLHttpRequest) 
    {// code for IE7+, Firefox, Chrome, Opera, Safari 
      xmlhttp=new XMLHttpRequest(); 
    } 
    else 
    {// code for IE6, IE5 
      xmlhttp=new ActiveXObject("Microsoft.XMLHTTP"); 
    } 

    xmlhttp.onreadystatechange=function() 
    { 
      if (xmlhttp.readyState==4 && xmlhttp.status==200) 
      { 
        document.getElementById("txtHint" + userNumber).innerHTML=xmlhttp.responseText; 
      } 
    } 
    xmlhttp.open("GET","getdata1.php?q="+str,true); 
    xmlhttp.send(); 
  } 
</script> 

En cuerpo:

<table><tr id="r1">  
    <td>
<input size=8 style="border: none"  type=number id=sku1 name=sku1 onchange="showUser(1, this.value)" onkeypress="return enter(document.orderform.sku2)" value=<? echo $sku1; ?>  >
    </td>
    <td>
        <? if($grp1==0){echo "&nbsp; ".$grp1;} else {echo "&nbsp; " ;} ?>
    </td>
    <td>
        <? if($su1==0){echo "&nbsp; ".$su1;} else {echo "&nbsp; " ;} ?>
    </td>
    <td>
        <? if($fp1>0){echo "&nbsp; ".$fp1;} else {echo "&nbsp; " ;} ?>
    </td>
    <td>
        <input type=number id=qty1 name=qty1 size=3 value=<? if($qty1>0){echo $qty1;}; ?> >
    </td>
    <td>
        <? if($qty1==0){echo "&nbsp;";} else {if($qty1>0){if($line1decvalue==0){ echo "<img src=tick.jpg>";} else{ echo "<img src=cross.jpg>";}} else {echo "<img src=cross.jpg>";}} ?>
    </td>
    <td>
        <b><font color=red><? if($sku1>0){if($points1>0){echo "&nbsp; ".$points1;} else {echo "0";};} else {echo " &nbsp; ";} ?></font></b>
    </td>
    <td>
        <div align="left" id="txtHint1"><? if($sku1>0){echo "Selling Units: <font color=red>$su1</font>, Grouping: <font color=red>$grp1</font>, $su1 per Pallet: <font color=red>$fp1</font>";} else {echo "Select a SKU on left and Details will be seen here";} ?></div>
    </td>
</tr>
<tr id="r2">  
    <td>
<input size=8  style="border: none" type=number id=sku2 name=sku2 onchange="showUser(2, this.value)" onkeypress="return enter(document.orderform.sku3)" value=<? echo $sku2; ?>   >
    </td>
    <td>
        <? if($grp2==0){echo "&nbsp; ".$grp2;} else {echo "&nbsp; " ;} ?>
    </td>
    <td>
        <? if($su2==0){echo "&nbsp; ".$su2;} else {echo "&nbsp; " ;} ?>
    </td>
    <td>
        <? if($fp2>0){echo "&nbsp; ".$fp2;} else {echo "&nbsp; " ;} ?>
    </td>
    <td>
        <input type=number id=qty2 name=qty2 size=3 value=<? if($qty2>0){echo $qty2;}; ?> >
    </td>
    <td>
        <? if($qty2==0){echo "&nbsp;";} else {if($qty2>0){if($line2decvalue==0){ echo "<img src=tick.jpg>";} else{ echo "<img src=cross.jpg>";}} else {echo "<img src=cross.jpg>";}} ?>
    </td>
    <td>
        <b><font color=red><? if($sku2>0){if($points2>0){echo "&nbsp; ".$points2;} else {echo "0";};} else {echo " &nbsp; ";} ?></font></b>
    </td>
    <td>
        <div align="left" id="txtHint2"><? if($sku2>0){echo "Selling Units: <font color=red>$su2</font>, Grouping: <font color=red>$grp2</font>, $su1 per Pallet: <font color=red>$fp2</font>";} else {echo " &nbsp; "; }?></div>
    </td>
</tr>

Funcionalidad de PC:enter image description here enter image description here

Funcionalidad de la tableta:enter image description here

Avíseme si puedo ayudar más con cualquier otra información.

¿Fue útil?

Solución 2

Aquí está la respuesta, el documento de línea Solo necesita ser eliminado. Gracias a @alex van Oostenrijk por esto.

Saludos, Ryan

Otros consejos

Me enfrenté a un problema similar en una aplicación, veo un problema similar aquí ... Tuve elementId.readyState que reemplazé con jQuery listo y funcionó para mí

En lugar de probar en la tableta cada vez, pruebe esto en Chrome ... ahorra tiempo que ambos rinden de la misma manera para este tipo de problemas

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top