我已经创建了一个函数并捕获了文本框的值。在按钮上单击,它应该警告该值。 代码是:
function substitute (argument) {
var myVal=document.getElementById('myTextBox').value();
alert(myVal);
if (myVal.length==0) {
alert('Empty Textbox');
};
}
然后使用它执行:
<input type="button" name="Button" value="Click Me" onclick="substitute();">
但没有任何反应。请告诉我我在哪里做错了。
答案 0 :(得分:4)
您有一些错误:
.value()
不是函数:使用.value
if
声明id
:请确保您在开始标记中有id="myTextBox"
如果没有发生任何事情,请务必检查浏览器控制台是否有错误。总是
function substitute () { // Parameter "argument" is not necessary
var myVal=document.getElementById('myTextBox').value; //.value, not .value()
alert(myVal);
if (myVal.length==0) {
alert('Empty Textbox');
}; // You don't need this semicolon
} // You were missing this curly brace
答案 1 :(得分:3)
value
不是函数,它是属性,因此:
var myVal=document.getElementById('myTextBox').value;
当您成为JS的新手时,我会给您一些建议:如果您想操纵DOM,请使用jQuery。
答案 2 :(得分:1)
在你的代码中,你没有将任何参数传递给函数subsititute(),但是@函数定义你写了替换(参数)。这是一个大问题,而且你在函数内部if条件之后还有一个半列。不需要它
试试这个..
<input type="text" id="myText" value="Hello" />
<input type="button" name="Button" value="Click Me" onclick="substitute();" />
在脚本部分,
function subsitute()
{
var myVal=$('#myText').val();
alert(myVal);
if (myVal=='')
{
alert('Empty Textbox');
}
}
答案 3 :(得分:0)
http://jsbin.com/tewudopi/1/edit
为按钮添加ID。引用按钮时,它不是&#34; .value()&#34;,它只是&#34; .value&#34;。
作为旁注,您应该使用===而不是==进行比较。
function substitute() {
var myVal=document.getElementById('myTextBox');
alert(myVal.value);
if (myVal.value.length===0) {
alert('Empty Textbox');
}
}
答案 4 :(得分:0)
可能类似以下内容。
<script type="text/javascript">
function substitute() {
var myVal=document.getElementById('myTextBox').value;
if (myVal.length>0) {
alert(myVal);
}
if (myVal.length==0) {
alert('Empty Textbox');
}
}
</script>
<input type="button" name="Button" value="Click Me" onclick="substitute();">
<textarea name="myTextBox" id="myTextBox"></textarea>