2015-09-06 38 views
1

切片的字符串我試圖把用戶從一個文本框中輸入一個字符串。檢查該字符串的長度,如果字符串超過給定數字,則對其執行切片操作。從一個文本框

這就是我想出了,但我的代碼什麼也不做。檢查控制檯,沒有錯誤給出。

HTML:

 <form id="slice"> 
      Enter a pharse:<input type="text" id="text_box_2"><br> 

      <input type="button" value="slice" onclick="Slice()"> 

      Result: <input type="text" id="slice_result"><br> 
     </form> 

JavaScript函數:

function Slice(){ 
    var UserString = document.getElementById("text_box_2").value; 
    var UserStringValue = UserString.length; 
    var Result = Userstring.slice(1,6); 

    if (UserStringValue > 6){ 
     document.getElementById("Slice_result").value = Result; 
    } 
    else{ 
     alert("Please enter a longer phrase.") 
    } 
} 

什麼還是我去哪裏錯了?

+0

更改 「Slice_result」 到 「slice_result」(小寫) –

回答

2

要留意區分大小寫的。

此:

var Result = Userstring.slice(1,6); 

應該使用如前面的代碼定義UserString(大寫字母 「S」)。

接着,輸入ID應該是全部小寫,slice_result,以配合HTML,而您的代碼使用不同的外殼:

document.getElementById("Slice_result") 

下面是與這些修復一個working JSBin

編輯:由於JaromandaX在評論中提到的,如果你想利用前6個字符,你應該使用slice(0, 6)

+1

拿到第6個字符,它應該是'.slice(0,6)' –

+0

@JaromandaX真,好點!更新了JSBin鏈接。 –

+0

@ Ahmad Mageed謝謝,我有一種感覺,我要麼沒有正確編碼,要麼我一直在看它太久,以至於發現拼寫/名稱錯誤。謝謝 ! – kronis72

-2

通常使用以下

var Value = $('#input_id').val(); 

將拉動請求的信息給你。

您還可以設置參數爲您切片功能和傳遞值當您運行的onclick();

我還注意到,切片()是當前js函數,不過隨着資本「S」你implentation是一些什麼不同的,它可能是更好的做法是更改名字有點。

+3

:jQuery是沒有要求 –

2

從代碼的粗略瀏覽。似乎通過這條線

var Result = Userstring.slice(1,6); 

,造成這也是一個

document.getElementById("Slice_result").value = Result 

應該

var Result = UserString.slice(1,6); 

document.getElementById("slice_result").value = Result