2015-09-06 36 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