2017-08-16 44 views
0

我正在構建一種頁面生成器,用戶可以在頁面中添加塊並保存佈局。我遇到了一個我似乎無法解決的問題。我有一個動態添加到頁面包含JavaScript文件中輸入作爲這樣一種形式:使用JavaScript動態添加內容捕獲提交事件

加入我調用下面的函數中添加事件偵聽器的內容之後。 $el對應於文件輸入。

function changeListen($el){ 
    $el.addEventListener('change', function(){ 
     $el.parentElement.submit(); 
    }); 
    $el.parentElement.addEventListener('submit', function(e){ 
     e.preventDefault; 
     // call Ajax request... 
    }); 
} 

我希望能夠更新與選擇的圖像時,一個Ajax請求的數據庫,所以我提交change事件中的形式,到目前爲止好,但由於某些原因的submit事件不是考慮到和頁面重新加載。任何解決方案或解決方法讚賞,最好不是jQuery。

+0

也許e.preventDefault()?它應該被稱爲:) – Tommos

回答

0

通過在HTML中使用onsubmit事件,您可以通過這種方式調用javascript函數並執行ajax調用。

的JavaScript樣本

<script> 
function doSomething() { 
    alert('Hello, World'); 
    return false; 
} 
</script> 

HTML樣品

<form onsubmit="return doSomething();"> 
    <input type="submit" value="Submit" /> 
</form> 

編輯:在javascript返回false所以?沒有出現在URI點擊後

+0

沒有快樂,onsubmit也被忽略了。也嘗試使用onsubmit =「alert()」和onsubmit =「返回false」,但沒有結果。 –