2012-12-01 119 views
1

这是我的HTML代码the code! 但JS不工作 我尝试了一些东西,但我不能让弹出的窗口,如果它小于2在JS中获取字符串长度

<script> 
    function Check(name) { 
     if (name.length < 2) 
      alert("פחות משני תווים בשם"); 
    } 
</script> 

<input 
    id="Text1" 
    name="Text1" 
    type="text" 
    value="שם פרטי" 
    onmouseover="value=''" 
    onclick="Check();" 
/> 
+2

你的代码应该做什么? –

+0

将this.value传递给Check()函数 –

回答

0

你应该将参数传递给你的函数:

<input id="Text1" name="Text1" type="text" value="שם פרטי" onmouseover="value=''" onclick="Check(this.value);" /> 
+1

'this'会比'document.getElementById('Text1')更好的选项' –

+0

我绝对同意 –

1

你的避风港没有正确地连接你的功能。你需要传递一个值。在onclick事件的情况下,this指的是input元素本身,其值可以用this.value检索。您需要在价值传递给您的Check()功能:

<input id="Text1" name="Text1" type="text" value="שם פרטי" 
    onmouseover="this.value=''" onclick="Check(this.value);" /> 

同样,你应该设置与this.value='value'空,因为我也有在你的代码调整值。我不知道mouseover事件的意图是什么,但是这种事件组合只有在用户的光标从不离开文本框时才起作用,这对许多用户来说肯定是违反直觉的。

0

尝试将参数传递给你的函数: -

Check(this.value); 

<input id="Text1" name="Text1" type="text" value="שם פרטי" onmouseover="value=''" onclick="Check(document.getElementById('Text1').value);" /> 
0

您可以通过检查(这个),那么它会得到文本字段的值。

+0

不,'this'是输入元素本身,而不是它的值。 –

+0

当然,但你可以使用this.value –

相关问题