Javascript 将输入值作为字符串添加到函数中

Javascript 将输入值作为字符串添加到函数中,javascript,jquery,Javascript,Jquery,基本上,我正在创建第一个函数,它通过单击按钮获取输入值。然后,我尝试创建一个事件,单击按钮即可将该值添加到函数中 var getInput = function() { $('#inputSubmit').click(function() { return $('input[name=input1]').val(); }); }; var addTextInTextBox_1 = function(text) { $("#textBox").append("<

基本上,我正在创建第一个函数,它通过单击按钮获取输入值。然后,我尝试创建一个事件,单击按钮即可将该值添加到函数中

 var getInput = function() {
$('#inputSubmit').click(function() {
    return $('input[name=input1]').val(); 
    });  };

var addTextInTextBox_1 = function(text) {
    $("#textBox").append("<p>"+text+"</p>");
$('#inputSubmit').on('click', addTextInTextBox_1("Good, your character's name is " + getInput()));
var getInput=function(){
$('#inputSubmit')。单击(函数(){
返回$('input[name=input1]')。val();
});  };
var addTextInTextBox_1=函数(文本){
$(“#文本框”)。追加(“”+text+”

”); $('#inputSubmit')。在('click',addTextInTextBox_1(“很好,您的角色名称为“+getInput()));
然而,我一直得到一个p,等于:“好,你的角色名称没有定义。我知道这是因为函数需要输入。
我只是不知道如何让函数等待,直到我单击按钮执行代码。

您不需要在
getInput
中再次绑定
单击

var getInput = function(){
    return $('input[name=input1]').val(); 
};
请注意,您的原始代码没有返回任何值(因此,
未定义)
:您的
返回
位于
单击
绑定的匿名函数中

总而言之:

var getInput = function(){
    return $('input[name=input1]').val(); 
};
var addTextInTextBox_1 = function(text){
    $("#textBox").append("<p>"+text+"</p>");
};
$('#inputSubmit').on('click', addTextInTextBox_1("Good, your character's name is " + getInput()));
var getInput=function(){
返回$('input[name=input1]')。val();
};
var addTextInTextBox_1=函数(文本){
$(“#文本框”)。追加(“”+text+”

”); }; $('#inputSubmit')。在('click',addTextInTextBox_1(“很好,您的角色名称为“+getInput()));