从文本框中切割字符串

时间:2015-09-06 04:54:44

标签: javascript

我正在尝试从文本框中获取用户输入的字符串。检查该字符串的长度,如果字符串超过给定的数字,则对其执行切片操作。

这是我提出的,但我的代码什么也没做。检查控制台,没有给出错误。

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.")
    }
}

我出错的地方或地点?

3 个答案:

答案 0 :(得分: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

答案 1 :(得分:2)

注意区分大小写。

此:

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

应该使用前面代码中定义的UserString(大写&#34; S&#34;)。

接下来,输入ID应全部为小写slice_result,以匹配HTML,但您的代码使用不同的大小写:

document.getElementById("Slice_result")

这里有working JSBin这些修复程序。

编辑:正如JaromandaX在评论中提到的,如果你想取前6个字符,你应该使用slice(0, 6)

答案 2 :(得分:-2)

通常使用以下

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

将为您提取所需的信息。

您还可以为切片函数设置参数,并在运行onclick()时传入值;

我还注意到slice()是一个当前的js函数,虽然你对大写'S'的实现有些不同,但更改一下这个名称可能是更好的做法。