我有一个表单,我希望在提交之前使用javascript进行验证。我正在尝试添加一个上传文件的文件,其id值为破折号,例如id =“file-upload”。这不起作用,但如果我从id中删除破折号...警报工作正常..
这是javascript代码
<script type="text/javascript">function check(form) { if(form.file-upload.value===""){alert("Please select a file to upload !");form.file-upload.focus();return (false);} } </script>
,这是表格
<form method="post" action="" onSubmit="return check(this)" enctype="multipart/form-data">
<label>Upload Image:<span class="asterixRequired">*</span></label>
<fieldset><input type="file" id="file-upload" name="file-upload"></fieldset>
</form>
答案 0 :(得分:1)
按ID查找元素的标准方法是.getElementById()
:
document.getElementById("file-upload").focus();
答案 1 :(得分:0)
查看Javascript and CSS, using dashes以及此问题/解决方案:
http://www.aspmessageboard.com/showthread.php?t=125142
显然JavaScript存在破折号问题,因此您可能必须使用左document.forms['formname'].elements['field-with-dashes'].value
(来自上述链接)来解决此问题。
答案 2 :(得分:0)
为什么不尝试验证jQuery插件? 看看这里:
http://bassistance.de/jquery-plugins/jquery-plugin-validation/