2014-02-28 42 views
-1

所以我有這個功能,顯示用戶的輸入值。我想在點擊特定按鈕後將它們全部擦除。如何修剪INPUT中的所有字符和數字?

下面的代碼:

HTML

<center> Are you sure you want to delete all?<br><br></center> 
     <div id="options11" onclick="EraseMe()"> Yes</div> 
     <div id="options12" onclick="CloseButton()">No</div> 

JS:

function List(){ 
    document.getElementById('order').innerHTML += document.getElementById('Name').value + document.getElementById('quan').value + parseInt(document.getElementById('Total').value);} //gets the inputted value of the user 

function EraseMe(){ 
var name = document.getElementById('Name').value; 
var quan = document.getElementById('quan').value; 
var totals = document.getElementById('Total').value; 

name.replace(/^[a-zA-Z0-9]$/, ""); 
    quan.replace(/^[a-zA-Z0-9]$/, ""); 
    totals.replace(/^[a-zA-Z0-9]$/, "");} 

而且,我想總結的document.getElementById的所有值( '合計') ,但我得到的結果是一個字符串的值,而不是一個整數。

下面是該代碼:

function compute(){ 
    totall = document.getElementById('quan') * document.getElementById('price'); 
document.getElementById('totalsss').value += parseInt(totall); 
document.getElementById('totalsss').innerHTML = document.getElementById('totalsss').value;} 
+1

一次提出一個問題。 –

+0

在詢問一個新的問題之前,請查看許多關於此主題的現有問題。 –

+0

BTW:document.getElementById('quan')爲您提供對DOM元素的引用,而不是該元素中的值。您需要:document.getElementById('quan')。值 –

回答

0

的一個問題是,取而代之的是一個純函數修改輸入 - 因此,結果String.replace必須使用。

另一個是正則表達式被錨定(這意味着它僅將在給定的情況下匹配單個字符的輸入),以及另一種是正則表達式不是全局的(這意味着它只能匹配一次)..

嘗試:

var nameElm = document.getElementById('Name'); 
// assign replacement result back to input's value, 
// after substituting all (g) English alphabet characters/numbers 
// with nothing .. any other characters will remain 
nameElm.value = nameElm.value.replace(/[a-zA-Z0-9]/g, ""); 
+0

哦,我該如何調用函數? – user3359381

+1

什麼「功能」? – user2864740

+0

this: var nameElm = document.getElementById('Name'); //將替換結果重新分配給輸入值 //將所有(g)英文字母字符/數字 //替換爲空後..任何其他字符將保留 nameElm.value = nameElm.value.replace(/ a-zA-Z0-9]/g,「」); 我想在用戶點擊一個特定的按鈕後刪除這些值。 – user3359381

0

如果你想空白的東西,只是一個空字符串替換:

function EraseMe(){ 
    document.getElementById('Name').value = ""; 
    document.getElementById('quan').value = ""; 
    document.getElementById('Total').value = ""; 
} 

沒有理由這樣做REG除非有你想要保留的東西,否則不要替換。

+0

我試過了,它不能工作 – user3359381

+0

@ user3359381:那麼你出錯了,因爲它絕對有效。請參閱:http://jsfiddle.net/d6S5g/ –

+0

@ user3359381:檢查您的ID實際上是否與具有相同ID的元素相對應(請注意:它們區分大小寫,並且您的外殼似乎遍佈整個地方)。 –