0

ユーザーが関数を呼び出せるようにしたいテキスト入力があります。

基本的に、ユーザーがバックスラッシュで始まる特定の「コマンド」を入力すると、対応する関数が呼び出されるように、文字列を関数に結び付けたいと考えています。

例として、 の/name後に値を入力すると、 name がユーザー オブジェクトのプロパティとして設定され、ユーザーが指定した値が設定されます。

では、20 ほどの「コマンド」でこれを行うにはどうすればよいでしょうか。

http://jsfiddle.net/k7sHT/5/

jQuery:

$('#textCommand').on('keypress', function(e) {
        if(e.keyCode==13) {
            sendConsole();
        }
});

var user = {};

var sendConsole = function() {
    value = $('#textCommand').val();
    if (value.substring(0,5) === "/name") {
        user.name = value.substring(6,20);
        alert(user.name);
    } else {
        $('body').append("<span>unknown command: "+value+"</span><br />")
        $('#textCommand').val("");
    }
}

HTML:

<input id="textCommand" type="text"><br/>
4

3 に答える 3