我覺得這是一個普遍的問題...但我一直沒能找到這個答案...呼叫從一個元素AJAX父頁面的功能 - 裝載到一個div
我加載當點擊一個鏈接時,使用ajax的一些文本框成一個div內的一個div ...
和在頁面的這個新添加的元素的onFocus事件期間,我必須調用父頁面中的JavaScript函數...
我的問題是......這些元素......即文本框不能在事件被觸發時調用函數.....
個我的猜測是,新加載的元素不會更新到父頁面的DOM樹
我也使用jQuery的,但離開它一邊一段時間,我應該怎麼做才能讓新加入的元素onFocus將調用寫在父頁面中的函數..?
這是代碼。
<script type = "text/javascript">
$(document).ready(function(){
// binding elements
$('.formContainer input[type=file]').live('change',function(){
alert("hi"); // here i bind the newly added file chooser
uploadImage();
});
});
</script>
的HTML是...
<div class="formContainer">
<form name="frmCreateHotel" action="uploadImage.php" method="post">
<table>
<tr>
<td colspan="2">
<div class="elementRow">
Hotel Image
</div>
</td>
<td>
<div class="elementRow" style="height:100px">
<input name="imageToUpload"
id="imageToUpload"
type="file"
size="30"
class="imageSelector"/> // the function should be called during this elements onchange
<input name="oldImageToDelete"
id="oldImageToDelete"
type="hidden" size="50" />
<input type="hidden" name="MAX_FILE_SIZE"
value="2000000" />
<input name="imageDescription"
id="imageDescription"
type="hidden" />
<div class="toolTip image">
<iframe id="uploadedImage"
name="uploadedImage"
src=""
style="width:160px; height:160px;"
frameborder="0"
marginheight="0"
marginwidth="0"></iframe>
</div>
</div>
</td>
</tr>
</table>
</div>
當文件路徑轉換功能應該叫...
希望我清楚..
感謝和問候....
我不認爲這會將事件綁定到加載到DOM中的未來元素。 – rahul 2009-12-03 05:56:43
謝謝.. 檢查綁定是否可以與onchange事件一起工作 – SpikETidE 2009-12-03 06:01:18
Adamantium是正確的...綁定不會在新添加的元素上工作....這就是Live()用於...但live()目前不支持onChange .... 我認爲這排除了jquery .... ?? – SpikETidE 2009-12-03 06:40:06