我有一个在clasic asp中创建的旧页面,包含一个表单,我试图在检查表单中的可用值后使用JavaScript函数提交表单。
HTML:
<form method="POST" action="vendorCheckDates.asp" name="Searchform" id="submit_Form">
Select Type of Search: </b>
<select size="1" name="Query" class="button">
<option selected name="vNAME" value="vNAME"> Name</option>
<option name="vNUM" value="vNUM"> Number</option>
<option name="vEM" value="vEM">Email </option>
<option name="vFAX" value="vFAX">Fax </option>
</select>
<b>:</b>
<input type="text" name="hsearch" id="hsearch">
<fieldset class="fieldset">
<legend><strong>Type</strong></legend>
<input type="radio" value="gov" name="tType" >Gov
<input type="radio" value="gfos" name="tType">GFOS
</fieldset>
<input type="button" value="Search" name="hfind" Onclick="SubmitForm()">
</form>
功能
function SubmitForm() {
var hsearch = document.all.submit_Form.hsearch.value;
var tType = document.getElementById('tType').value;
if ((hsearch = ! '') && (hsearch = ! null)) {
if ((tType = ! '') && (tType = ! null)) {
document.all.submit_Form.submit();
} else { alert("please select search type");}
} else { alert("please write search criteria"); }
}
当我运行表单时,字段hsearch为空,但是当我单击提交时,该值将为true,因为我仍然没有在输入字段hsearch中写任何内容,这很奇怪,这就是为什么JavaScript函数中的sels部分将无法正常工作
答案 0 :(得分:3)
我认为您使用的是错误的运算符。它应该是
if ((hsearch != '') && (hsearch != null)) {
if ((tType != '') && (tType != null)) {
答案 1 :(得分:0)
而不是:
var hsearch = document.all.submit_Form.hsearch.value;
尝试:
var hsearch = document.getElementById('hsearch').value;
您可以随时调整值alert
,如:
alert(hsearch)
答案 2 :(得分:0)
您必须写hsearch != ''
而不是hsearch = ! ''
。
您正在做的不是检查值,而是指定一个返回true的值。
hsearch = ! ''
=> hsearch = !''
=> hsearch = true
=> true