JavaScript首字母大写不起作用

JavaScript首字母大写不起作用,javascript,html,css,Javascript,Html,Css,首先,这是我第一次使用JavaScript,所以可能只是我遗漏了一些非常简单的东西 我只想得到一个文本框的值,并用大写的第一个字母发出警报。我一切正常,第一个字母实际上没有大写 以下是我调用函数的方式: else { input = document.getElementById("search").value; 'input'.search(); alert(input); } 这就是它本身的功能: function search(string) { retu

首先,这是我第一次使用JavaScript,所以可能只是我遗漏了一些非常简单的东西

我只想得到一个文本框的值,并用大写的第一个字母发出警报。我一切正常,第一个字母实际上没有大写

以下是我调用函数的方式:

else
{
    input = document.getElementById("search").value;
    'input'.search();
    alert(input);
}
这就是它本身的功能:

function search(string)
{
    return string.charAt(0).toUpperCase();
}

这是正确的代码

else
{
    input = document.getElementById("search").value;
    input =search(input);
    alert(input);
}
试试这个:

input = search(input);
而不是:

'input'.search();

您根本没有更改
输入。尝试:

else
{
    input = document.getElementById("search").value;
    alert(search(input));
}
如果要永久更改
输入
请尝试:

else
{
    input = document.getElementById("search").value;
    input = search(input);
    alert(input);
}

答案是正确的,但在警告框中只有第一个字母。 如果您不希望只使用第一个字母,那么以下是解决方案:

function search(string)
{
    return string.substring(0,1).toLocaleUpperCase() + string.substring(1);
}

从这里的一些错误来看

首先,

search(input)
而不是

'input'.search()
第二,

string
是不可变的,因此您必须

input = search(input);
alert(input);
.
.
.
function search(str) {
    return (str.replace(str.charAt(0), str.charAt(0).toUpperCase()));
}

我不太清楚您的问题,但我假设您希望,如果您的输入字符串是“hello”,那么您希望输出为“hello”

试试这个

调用该方法并警告消息:-

alert(search(input));
在方法中:-

return Character.toUpperCase(input.charAt(0)) + input.substring(1);

您正在对文本文本调用函数,但没有对其返回值执行任何操作。可能的重复操作最好将其标记为重复,而不是从我链接的问题中获取答案并发布。非常感谢,我没有考虑需要。子字符串,因此这节省了我一些时间。:)
String.prototype.capitalize = function() {
    return this.charAt(0).toUpperCase()+this.slice(1);
}

var searchField = document.getElementById("search");
var query = searchField.value;
searchField.value = query.capitalize();

function search(query) {
   // query api or something...
}