2014-01-21 31 views
0

我有以下问题,我做了使用HTML与一些输入字段的表单后更新。 我还做了使用下面的JS代码禁用提交按钮:我的按钮需要一个输入字段

if(document.forms['form'].inputfield1.value == "") 
    { 
    document.forms[0].submit.disabled=true; 
    } 
    else { 
    document.forms[0].submit.disabled=false; 
    } 

这工作得很好,每当我加载页面的按钮是无效的,但是当我的东西填满它不会被启用。

但每当我把一个价值在我的输入框,如下所示:

<input type="text" name="inputfield1" size="3" maxlength="3" value="12345"> 

而且我加载按钮启用页面,证明了JS代码的工作就好了。

我不知道是否有无论如何,使该按钮刷新有人用输入字段或类似的东西之后。

我完全新的JS和PHP,任何帮助是非常感谢!

+1

该检查仅在加载时进行,您似乎想要动态地执行此操作。它可以通过'javascript事件'来实现。 –

回答

0

您需要使用JavaScript事件检测值的变化时和运行验证。我建议您使用onkeyup,因为用户在输入内容时可能会需要它。

这可以用JavaScript来完成如下...

创建onload事件触发时,页面加载,这将注册为您输入的事件处理程序,并调用初始检查设置默认状态:

window.onload = function(){ 
    document.getElementsByName("inputfield1")[0].onkeyup = validateForm; 
    validateForm(); 
}; 

然后你的函数做验证:

function validateForm(){ 
    if(document.forms['form'].inputfield1.value == "") 
    { 
     document.forms[0].submit.disabled=true; 
    } 
    else { 
     document.forms[0].submit.disabled=false; 
    } 
} 
+0

我做了什么,你告诉我,但现在我的按钮默认情况下,每当我加载页面 –

+0

就叫'validateForm()'在你的主要的Javascript范围,在这里有原始的代码 – musefan

+0

确切位置在哪里我把它启用然后?只是我的我

0

可以使用的onkeyup功能简单地做到这一点

<input type="text" name="inputfield1" size="3" maxlength="3" value="12345" onkeyup='check()'> 

function check() { 
    if(document.forms['form'].inputfield1.value == ""){ 
    document.forms[0].submit.disabled=true; 
} 
else { 
    document.forms[0].submit.disabled=false; 
} 
} 
+0

上方,当我现在加载页面时,启用了我的按钮=/ –

+0

也在文档就绪函数中调用check()方法。 – Ramesh

相关问题