<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>fengcool.com &#187; ajax</title>
	<atom:link href="http://www.fengcool.com/tag/ajax/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.fengcool.com</link>
	<description>Just another WordPress weblog</description>
	<lastBuildDate>Wed, 25 Jan 2012 19:09:58 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.1</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Ajax form upload local image file without refresh</title>
		<link>http://www.fengcool.com/2009/06/ajax-form-upload-local-image-file-without-refresh/</link>
		<comments>http://www.fengcool.com/2009/06/ajax-form-upload-local-image-file-without-refresh/#comments</comments>
		<pubDate>Tue, 23 Jun 2009 01:56:15 +0000</pubDate>
		<dc:creator>rick</dc:creator>
				<category><![CDATA[Javascript]]></category>
		<category><![CDATA[ajax]]></category>
		<category><![CDATA[jquery]]></category>
		<category><![CDATA[upload file]]></category>

		<guid isPermaLink="false">http://www.fengcool.com/?p=83</guid>
		<description><![CDATA[Using jquery/ajax to upload image files without refresh the page. This ajax enabled page use hidden form and hidden iframe to upload image implicitly. User may add or remove uploaded images.]]></description>
			<content:encoded><![CDATA[<p>The code example below performs following tasks:</p>
<ul>
<li>Upload multiple image files without refresh page.</li>
<li>Control maximum number of image files to be uploaded.</li>
<li>Instantly review uploaded images.</li>
</ul>
<p><a href="/demo/ajax_image_uploading/">See it in action here</a></p>
<p><a href="/demo/ajax_image_uploading/code.rar">Download source code</a></p>
<p>Basic idea: </p>
<p>You have a Form #1 with input element with type &#8220;file&#8221; to let user to select what images to be uploaded. Also, you need a hidden Form #2 and hidden iframe to do the upload action implicitly. When user select a file, the value of input element needed in Form #2. However, for security reason, browsers are not allow us to manipulate the value of input element, therefore directly copy value of input element to another is not the way to achieve our goal. But, how about copy the whole input element to Form #2? Here is the code.</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
</pre></td><td class="code"><pre class="javascript" style="font-family:monospace;"><span style="color: #339933;">&lt;</span>html<span style="color: #339933;">&gt;</span>
<span style="color: #339933;">&lt;</span>head<span style="color: #339933;">&gt;</span>
<span style="color: #339933;">&lt;</span>script src<span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;http://code.jquery.com/jquery-latest.js&quot;</span><span style="color: #339933;">&gt;&lt;/</span>script<span style="color: #339933;">&gt;</span>
&nbsp;
<span style="color: #339933;">&lt;</span>script  type<span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;text/javascript&quot;</span><span style="color: #339933;">&gt;</span>
<span style="color: #003366; font-weight: bold;">var</span> frameId <span style="color: #339933;">=</span> <span style="color: #3366CC;">'frame_ID'</span><span style="color: #339933;">;</span>         <span style="color: #006600; font-style: italic;">//hidden frame id</span>
<span style="color: #003366; font-weight: bold;">var</span> jFrame <span style="color: #339933;">=</span> <span style="color: #003366; font-weight: bold;">null</span><span style="color: #339933;">;</span>                <span style="color: #006600; font-style: italic;">//hidden frame object</span>
<span style="color: #003366; font-weight: bold;">var</span> formId <span style="color: #339933;">=</span> <span style="color: #3366CC;">'form_ID'</span><span style="color: #339933;">;</span>           <span style="color: #006600; font-style: italic;">//hidden form id</span>
<span style="color: #003366; font-weight: bold;">var</span> jForm <span style="color: #339933;">=</span> <span style="color: #003366; font-weight: bold;">null</span><span style="color: #339933;">;</span>                 <span style="color: #006600; font-style: italic;">//hidden form object</span>
<span style="color: #003366; font-weight: bold;">var</span> fileMax <span style="color: #339933;">=</span> <span style="color: #CC0000;">3</span><span style="color: #339933;">;</span>                  <span style="color: #006600; font-style: italic;">//maximum number of file to be uploaded</span>
<span style="color: #003366; font-weight: bold;">var</span> fileCount <span style="color: #339933;">=</span> <span style="color: #CC0000;">0</span><span style="color: #339933;">;</span>                <span style="color: #006600; font-style: italic;">//file counter</span>
<span style="color: #003366; font-weight: bold;">var</span> uploadUrl <span style="color: #339933;">=</span> <span style="color: #3366CC;">&quot;save.php&quot;</span><span style="color: #339933;">;</span>       <span style="color: #006600; font-style: italic;">//where to handle uploaded image</span>
&nbsp;
&nbsp;
$<span style="color: #009900;">&#40;</span>document<span style="color: #009900;">&#41;</span>.<span style="color: #660066;">ready</span><span style="color: #009900;">&#40;</span><span style="color: #003366; font-weight: bold;">function</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span>                     
&nbsp;
jForm <span style="color: #339933;">=</span> createForm<span style="color: #009900;">&#40;</span>formId<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>            <span style="color: #006600; font-style: italic;">//create hidden form</span>
jFrame <span style="color: #339933;">=</span> createUploadIframe<span style="color: #009900;">&#40;</span>frameId<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>  <span style="color: #006600; font-style: italic;">//create hidden iframe</span>
&nbsp;
<span style="color: #006600; font-style: italic;">//append hidden form to hidden iframe</span>
jForm.<span style="color: #660066;">appendTo</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'body'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>         
jForm.<span style="color: #660066;">attr</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'target'</span><span style="color: #339933;">,</span>frameId<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>          <span style="color: #006600; font-style: italic;">//make form target to iframe</span>
&nbsp;
<span style="color: #006600; font-style: italic;">//bind onchange function to input element</span>
$<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;#inp&quot;</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">bind</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'change'</span><span style="color: #339933;">,</span>startUpload<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> 
&nbsp;
<span style="color: #003366; font-weight: bold;">function</span> startUpload<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span>
   <span style="color: #000066; font-weight: bold;">if</span><span style="color: #009900;">&#40;</span>jForm<span style="color: #339933;">!=</span><span style="color: #003366; font-weight: bold;">null</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span>               
      jForm.<span style="color: #660066;">remove</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>                        <span style="color: #006600; font-style: italic;">//re-create hidden form</span>
      jForm <span style="color: #339933;">=</span> createForm<span style="color: #009900;">&#40;</span>formId<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
      jForm.<span style="color: #660066;">appendTo</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'body'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
      jForm.<span style="color: #660066;">attr</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'target'</span><span style="color: #339933;">,</span>frameId<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
   <span style="color: #009900;">&#125;</span>
&nbsp;
   <span style="color: #003366; font-weight: bold;">var</span> newElement <span style="color: #339933;">=</span> $<span style="color: #009900;">&#40;</span><span style="color: #000066; font-weight: bold;">this</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">clone</span><span style="color: #009900;">&#40;</span><span style="color: #003366; font-weight: bold;">true</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>   <span style="color: #006600; font-style: italic;">//clone input element object</span>
   newElement.<span style="color: #660066;">bind</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'change'</span><span style="color: #339933;">,</span>startUpload<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>  <span style="color: #006600; font-style: italic;">//bind onchange function. detect iframe changes</span>
   newElement.<span style="color: #660066;">insertAfter</span><span style="color: #009900;">&#40;</span>$<span style="color: #009900;">&#40;</span><span style="color: #000066; font-weight: bold;">this</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>        <span style="color: #006600; font-style: italic;">//insert clone object to current input element object</span>
   $<span style="color: #009900;">&#40;</span><span style="color: #000066; font-weight: bold;">this</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">appendTo</span><span style="color: #009900;">&#40;</span>jForm<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>                   
&nbsp;
   jForm.<span style="color: #660066;">submit</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>                         <span style="color: #006600; font-style: italic;">//let's upload the file</span>
&nbsp;
   jFrame.<span style="color: #660066;">unbind</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'load'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>                  
   jFrame.<span style="color: #660066;">load</span><span style="color: #009900;">&#40;</span><span style="color: #003366; font-weight: bold;">function</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span>        <span style="color: #006600; font-style: italic;">//bind onload function to hidden iframe</span>
&nbsp;
      <span style="color: #006600; font-style: italic;">//get response message from hidden iframe</span>
      <span style="color: #003366; font-weight: bold;">var</span> myFrame <span style="color: #339933;">=</span> document.<span style="color: #660066;">getElementById</span><span style="color: #009900;">&#40;</span>$<span style="color: #009900;">&#40;</span><span style="color: #000066; font-weight: bold;">this</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">attr</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'name'</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>   
      <span style="color: #003366; font-weight: bold;">var</span> response <span style="color: #339933;">=</span> $<span style="color: #009900;">&#40;</span>myFrame.<span style="color: #660066;">contentWindow</span>.<span style="color: #660066;">document</span>.<span style="color: #660066;">body</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">text</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
      <span style="color: #006600; font-style: italic;">/*
      * you may handle upload status from reponse message.
      * in this example, upload succeeded if message contains &quot;.gif&quot; , otherwise, alert reponse message
      */</span>
&nbsp;
      <span style="color: #000066; font-weight: bold;">if</span><span style="color: #009900;">&#40;</span>response.<span style="color: #660066;">indexOf</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'.gif'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">!=-</span><span style="color: #CC0000;">1</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span> <span style="color: #006600; font-style: italic;">//upload successfully</span>
&nbsp;
         <span style="color: #006600; font-style: italic;">//show thumbnails, add text box with file name</span>
         addUpload<span style="color: #009900;">&#40;</span>Math.<span style="color: #660066;">floor</span><span style="color: #009900;">&#40;</span>Math.<span style="color: #660066;">random</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">*</span><span style="color: #CC0000;">100</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">,</span>response<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>   
         fileCount<span style="color: #339933;">++;</span>
         <span style="color: #000066; font-weight: bold;">if</span><span style="color: #009900;">&#40;</span>fileCount <span style="color: #339933;">&gt;=</span> fileMax<span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span>   <span style="color: #006600; font-style: italic;">//reach maximum upload file, disable input element</span>
            $<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;#inp&quot;</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">attr</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'disabled'</span><span style="color: #339933;">,</span><span style="color: #3366CC;">'disable'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
         <span style="color: #009900;">&#125;</span>
      <span style="color: #009900;">&#125;</span><span style="color: #000066; font-weight: bold;">else</span><span style="color: #009900;">&#123;</span>  <span style="color: #006600; font-style: italic;">//error</span>
         <span style="color: #000066;">alert</span><span style="color: #009900;">&#40;</span>response<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
      <span style="color: #009900;">&#125;</span>
   <span style="color: #009900;">&#125;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span>
&nbsp;
&nbsp;
<span style="color: #009900;">&#125;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #003366; font-weight: bold;">function</span> createUploadIframe<span style="color: #009900;">&#40;</span>id<span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span>
   <span style="color: #006600; font-style: italic;">//set top and left to make form invisible</span>
   <span style="color: #000066; font-weight: bold;">return</span> $<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'&lt;iframe width=&quot;300&quot; height=&quot;200&quot; name=&quot;'</span> <span style="color: #339933;">+</span> id <span style="color: #339933;">+</span> <span style="color: #3366CC;">'&quot; id=&quot;'</span> <span style="color: #339933;">+</span> id <span style="color: #339933;">+</span> <span style="color: #3366CC;">'&quot;&gt;&lt;/iframe&gt;'</span><span style="color: #009900;">&#41;</span>
         .<span style="color: #660066;">css</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#123;</span>position<span style="color: #339933;">:</span> <span style="color: #3366CC;">'absolute'</span><span style="color: #339933;">,</span>top<span style="color: #339933;">:</span> <span style="color: #3366CC;">'270px'</span><span style="color: #339933;">,</span>left<span style="color: #339933;">:</span> <span style="color: #3366CC;">'450px'</span><span style="color: #339933;">,</span>border<span style="color: #339933;">:</span><span style="color: #3366CC;">'1px solid #f00'</span><span style="color: #009900;">&#125;</span><span style="color: #009900;">&#41;</span>
         .<span style="color: #660066;">appendTo</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'body'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span>
&nbsp;
<span style="color: #003366; font-weight: bold;">function</span> createForm<span style="color: #009900;">&#40;</span>formId<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
      <span style="color: #000066; font-weight: bold;">return</span> $<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'&lt;form method=&quot;post&quot; action=&quot;'</span><span style="color: #339933;">+</span>uploadUrl<span style="color: #339933;">+</span><span style="color: #3366CC;">'&quot; name=&quot;'</span> <span style="color: #339933;">+</span> formId <span style="color: #339933;">+</span> <span style="color: #3366CC;">'&quot; id=&quot;'</span> <span style="color: #339933;">+</span> formId <span style="color: #339933;">+</span> 
            <span style="color: #3366CC;">'&quot; enctype=&quot;multipart/form-data&quot; style=&quot;position:absolute;border:1px solid #f00;'</span><span style="color: #339933;">+</span>
            <span style="color: #3366CC;">'width:300px;height:100px;left:450px;top:150px;padding:5px&quot;&gt;'</span> <span style="color: #339933;">+</span>
            <span style="color: #3366CC;">'&lt;strong&gt;You should hide red blocks&lt;/strong&gt;&lt;br&gt;&lt;br&gt;&lt;/form&gt;'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span>
&nbsp;
<span style="color: #003366; font-weight: bold;">function</span> addUpload<span style="color: #009900;">&#40;</span>id<span style="color: #339933;">,</span>img<span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span>
   <span style="color: #003366; font-weight: bold;">var</span> div <span style="color: #339933;">=</span> $<span style="color: #009900;">&#40;</span>document.<span style="color: #660066;">createElement</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'div'</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">attr</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'id'</span><span style="color: #339933;">,</span>id<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
   <span style="color: #006600; font-style: italic;">//add uploaded image</span>
   div.<span style="color: #660066;">html</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;&lt;img src='&quot;</span><span style="color: #339933;">+</span>img<span style="color: #339933;">+</span><span style="color: #3366CC;">&quot;'&gt;&lt;br /&gt;&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
   <span style="color: #006600; font-style: italic;">//add text box</span>
   <span style="color: #003366; font-weight: bold;">var</span> fileName <span style="color: #339933;">=</span> img.<span style="color: #660066;">substring</span><span style="color: #009900;">&#40;</span>img.<span style="color: #660066;">lastIndexOf</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;/&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">+</span><span style="color: #CC0000;">1</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
   <span style="color: #003366; font-weight: bold;">var</span> txtbx <span style="color: #339933;">=</span> $<span style="color: #009900;">&#40;</span>document.<span style="color: #660066;">createElement</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'input'</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">attr</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'name'</span><span style="color: #339933;">,</span><span style="color: #3366CC;">'img[]'</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">attr</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'type'</span><span style="color: #339933;">,</span><span style="color: #3366CC;">'text'</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">val</span><span style="color: #009900;">&#40;</span>fileName<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
   <span style="color: #009966; font-style: italic;">/* you may want to change textbox to a hidden field in production */</span>
   <span style="color: #006600; font-style: italic;">//var txtbx = $(document.createElement('input')).attr('name','img[]').attr('type','hidden').val(fileName);</span>
   txtbx.<span style="color: #660066;">appendTo</span><span style="color: #009900;">&#40;</span>div<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
&nbsp;
   <span style="color: #006600; font-style: italic;">//add remove thumbnail link</span>
   <span style="color: #003366; font-weight: bold;">var</span> rem <span style="color: #339933;">=</span> $<span style="color: #009900;">&#40;</span>document.<span style="color: #660066;">createElement</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'a'</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span>
                               .<span style="color: #660066;">attr</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'alt'</span><span style="color: #339933;">,</span>id<span style="color: #009900;">&#41;</span>
                               .<span style="color: #660066;">attr</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'href'</span><span style="color: #339933;">,</span><span style="color: #3366CC;">'javascript:;'</span><span style="color: #009900;">&#41;</span>
                               .<span style="color: #660066;">text</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;Remove&quot;</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">click</span><span style="color: #009900;">&#40;</span>removeUpload<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>      
   rem.<span style="color: #660066;">appendTo</span><span style="color: #009900;">&#40;</span>div<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
   <span style="color: #006600; font-style: italic;">//add to the page</span>
   div.<span style="color: #660066;">appendTo</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;#uploaded_thumb&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span>
&nbsp;
<span style="color: #003366; font-weight: bold;">function</span> removeUpload<span style="color: #009900;">&#40;</span>e<span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span>
   <span style="color: #003366; font-weight: bold;">var</span> removeId <span style="color: #339933;">=</span> $<span style="color: #009900;">&#40;</span>e.<span style="color: #660066;">target</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">attr</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'alt'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
   $<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'#'</span><span style="color: #339933;">+</span>removeId<span style="color: #009900;">&#41;</span>.<span style="color: #660066;">remove</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
   <span style="color: #000066; font-weight: bold;">if</span><span style="color: #009900;">&#40;</span>fileCount<span style="color: #339933;">&gt;</span><span style="color: #CC0000;">0</span><span style="color: #009900;">&#41;</span> fileCount<span style="color: #339933;">--;</span>
   $<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;#inp&quot;</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">removeAttr</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'disabled'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span>
<span style="color: #339933;">&lt;/</span>script<span style="color: #339933;">&gt;</span>
&nbsp;
<span style="color: #339933;">&lt;/</span>head<span style="color: #339933;">&gt;</span>
<span style="color: #339933;">&lt;</span>body<span style="color: #339933;">&gt;</span>
  <span style="color: #339933;">&lt;</span>form<span style="color: #339933;">&gt;</span>   
   <span style="color: #339933;">&lt;</span>div id<span style="color: #339933;">=</span><span style="color: #3366CC;">'uploaded_thumb'</span><span style="color: #339933;">&gt;&lt;/</span>div<span style="color: #339933;">&gt;</span>
&nbsp;
   <span style="color: #339933;">&lt;</span>div style<span style="color: #339933;">=</span><span style="color: #3366CC;">'padding-top:20px'</span><span style="color: #339933;">&gt;</span>
   upload a small GIF <span style="color: #339933;">&lt;</span>input type<span style="color: #339933;">=</span><span style="color: #3366CC;">'file'</span> <span style="color: #000066;">name</span><span style="color: #339933;">=</span><span style="color: #3366CC;">'image'</span> id<span style="color: #339933;">=</span><span style="color: #3366CC;">'inp'</span><span style="color: #339933;">&gt;</span>
   <span style="color: #339933;">&lt;/</span>div<span style="color: #339933;">&gt;</span>
  <span style="color: #339933;">&lt;/</span>form<span style="color: #339933;">&gt;</span>
<span style="color: #339933;">&lt;/</span>body<span style="color: #339933;">&gt;</span>
<span style="color: #339933;">&lt;/</span>html<span style="color: #339933;">&gt;</span></pre></td></tr></table></div>

<a rel="external nofollow" class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save?linkurl=http%3A%2F%2Fwww.fengcool.com%2F2009%2F06%2Fajax-form-upload-local-image-file-without-refresh%2F&amp;linkname=Ajax%20form%20upload%20local%20image%20file%20without%20refresh"><img src="http://www.fengcool.com/wp-content/plugins/add-to-any/share_save_120_16.png" width="120" height="16" alt="Share/Save/Bookmark"/></a>]]></content:encoded>
			<wfw:commentRss>http://www.fengcool.com/2009/06/ajax-form-upload-local-image-file-without-refresh/feed/</wfw:commentRss>
		<slash:comments>22</slash:comments>
		</item>
	</channel>
</rss>

