2016-04-19 25 views
0

修改:
1.删除不需要的代码...
2.阐明了所需的解决方案并添加了重置按钮HTML。如何重置新添加的表单输入

我见过用于复位形式的各种方法,但我将内容添加到一个空白的div(ID =“unitPulled”)通过AJAX如此,类似于下面的方法将不起作用:

document.forms[0].reset(); 

我的目标是在用户点击重置按钮时重置整个表单。

我该如何解决这个问题? DOM是否需要重新加载?

的HTML按钮:

<button id="reset" name="reset" class="btn btn-default" type="reset">Clear</button> 

的Javascript:

/* Below is for auto-updating of initial and number */ 
var oXmlHttp 

function showUnits(str) // Change function name 
{ 
    var url = "ajax.cfm?&lic_plate=" + str // Change URL 
    oXmlHttp = GetHttpObject(stateChanged) 
    oXmlHttp.open("GET", url, true) 
    oXmlHttp.send(null) 
} 

// Below is where new elements are added: 
function stateChanged() { 
    if (oXmlHttp.readyState == 4 || oXmlHttp.readyState == "complete") { 
     document.getElementById("unitPulled").innerHTML = oXmlHttp.responseText; // Change ID 
     document.getElementById("lic_plate").focus(); 

    } 
} 

谢谢!

+0

是否要删除div的所有内容? –

+0

“form [0]”中新添加的字段? – RRK

+0

Keshav - 删除所有内容或重置每个输入的新增值将是理想选择。 Rejith - 是的,新添加的字段是在窗体内,在div“unitPulled” – PPJN

回答

0

加入这一行,你function stateChanged()

function stateChanged() { 
    if (oXmlHttp.readyState == 4 || oXmlHttp.readyState == "complete") { 
     document.getElementById("unitPulled").innerHTML = oXmlHttp.responseText; // Change ID 
     document.getElementById("myForm").reset(); 
     document.getElementById("lic_plate").focus(); 
    } 
} 

请把你的表格ID而不是myForm会的。让我知道,如果这不起作用,表格值会在ajax调用后重置。

+0

内我不想重置stateChanged函数内部的窗体。这将是当按钮被按下时。而且,这个方法在按下按钮时不会清楚。 – PPJN