0

Hi,
I am having problem with applying ajax on IE.I am applying innerHtml on select tag but it is not working my ajax code is

function AjaxF(ftype,cid)
{

var httpxml;
try
  {
  // Firefox, Opera 8.0+, Safari
  httpxml=new XMLHttpRequest();
  }
catch (e)
  {
  // Internet Explorer
          try
                        {
                    httpxml=new ActiveXObject("Msxml2.XMLHTTP");
                    }
              catch (e)
                    {
                try
              {
              httpxml=new ActiveXObject("Microsoft.XMLHTTP");
              }
                catch (e)
              {
              alert("Your browser does not support AJAX!");
              return false;
              }
            }
  }
function stateck()
    {
    if(httpxml.readyState==4)
      {

var myarray=httpxml.responseText;
if(ftype=='Files')
{
document.getElementById('temp_thumbnail').innerHTML = myarray;
document.getElementById('temp_mainfiles').innerHTML = myarray;
document.getElementById('temp_preview').innerHTML = myarray;
document.getElementById('temp_image').innerHTML = myarray;
}
else 
{
document.getElementById('temp_thumbnail').innerHTML = myarray;
document.getElementById('temp_main').innerHTML = myarray;
document.getElementById('temp_image').innerHTML = myarray;
}


      }
    }
var url="ajax/files_ajax.php";	
url=url+"?filetype="+ftype+"&customerid="+cid;
url=url+"&sid="+Math.random();
httpxml.onreadystatechange=stateck;
httpxml.open("GET",url,true);
httpxml.send(null);
  }

My php code for creating option is.I am getting the values in filetype and it is working fine on other browsers

$sql="select name ,id from temporary_upload where type ='$filetype' AND customer_id='$customer_id'";
$result=mysql_query($sql);

while($rows=mysql_fetch_array($result))
	{

    
	$s.="<option id='' name='' selected='selected' value='". $rows['name']  ."'>".  $rows['name'] ."</option>";
	
}

echo $s;

My html for this code is

<select id="temp_thumbnail" name="temp_thumbnail" style="width:452px">

                <option></option>
                
              </select>

I have searched for this error on many forums.They all are saying that innerHtml with select has error in IE can anyone help me to resolve this issue.That I can populate my select option.
Thanks in advance

Edited by saadi06: n/a

2
Contributors
3
Replies
4
Views
6 Years
Discussion Span
Last Post by Airshow
0

Saadi,

The simplest solution is to replace the entire menu from <select ...> to </select>. You can either build the menu like this in php or "top and tail" the options string in the ajax success handler.

If you don't already have an addressable container, then wrap the original menu in <span id="...">...</span>.

If you have an onchange handler ('change' in jQuery), then you need to attach it with .live('change', ...) otherwise its action will be lost when the element is replaced.

Airshow

0

Thanks airshow I have solved the problem.I replaced the whole select portion and it worked fine.Thanks a lot

0

Fantastic Saadi.

There's a "... solved" link toward the bottom of the page.

Airshow

Edited by Airshow: n/a

This topic has been dead for over six months. Start a new discussion instead.
Have something to contribute to this discussion? Please be thoughtful, detailed and courteous, and be sure to adhere to our posting rules.