В настоящее время я пытаюсь вызвать две функции из javascript внутри html-страницы.вызов html onclick javascript
Im неспособность заставить это работать правильно. Я посмотрел через stackoverflow, но, похоже, не нашел правильного решения моей проблемы.
Html код:
<script src="js/check.js"></script>
<script src="js/jquery.js" type="text/javascript"></script>
<script src="js/jquery.ui.draggable.js" type="text/javascript"></script>
<script src="js/jquery.alerts.js" type="text/javascript"></script>
<link href="css/jquery.alerts.css" rel="stylesheet" type="text/css" media="screen" />
</head>
<body>
<div class="container">
<section class="main">
<form class="form-2">
<h1><span class="log-in">CPE Logistics Log in</span></h1>
<p class="float">
<label for="login"><i class="icon-user"></i>Tech ID:</label>
<input type="number" name="login" placeholder="Tech ID" id="techid">
</p>
<p align="center" class="float2">
Select Duration in Days</p>
<p class="float2">
<input type="radio" name="duration" value="0 to 13 Days" /> 0 to 13 Days</p>
<p class="float2">
<input type="radio" name="duration" value="14 to 27 Days" />
14 to 27 Days</p>
<p class="float2">
<input type="radio" name="duration" value="28+ Days" />
28+ Days</p>
<p class="clearfix">
<input type="submit" name="submit" value="Forward Logistics" id="log-fwd" onclick="return filledin();return check()"/>
<input type="submit1" name="submit" value="Reverse Logistics" id="log-rvse" onclick="return filledin();return check1()"/>
</p>
</form>
</section>
</div>
</body>
Вот check.js
function filledin()
{
var empt = document.getElementById("techid").value;
if (empt == "")
{
jAlert('Valid Tech ID Required', 'Alert Dialog');
return false;
}
}
function check()
{
var dur = document.getElementsByName("duration");
var len = dur.length
for(i=0;i<len;i++)
{
if(dur[i].checked)
{
var url="http://wbv-sat-p0001:1013/ViewData.aspx?assetDirection=Forward&filterType=Tech ID&filterValue=" + document.getElementById("techid").value + "&categoryType=Status 7 Duration Margin&categoryValue=" + dur[i].value + "&techType=";
location.href=url;
return false;
}
}
}
function check1()
{
var dur = document.getElementsByName("duration");
var len = dur.length
for(i=0;i<len;i++)
{
if(dur[i].checked)
{
var url="http://wbv-sat-p0001:1013/ViewData.aspx?assetDirection=Reverse&filterType=Tech ID&filterValue=" + document.getElementById("techid").value + "&categoryType=Status 7 Duration Margin&categoryValue=" + dur[i].value + "&techType=";
location.href=url;
return false;
}
}
}
Это возвращает окно предупреждения, если нет ID ТЕХ не вводится JavaScript. При выборе кнопки радио и нажмите либо одна из кнопок представляют он возвращает это как URL
file:///C:/Users/*****/Desktop/cpe1/cpe2.html?login=13293&duration=14+to+27+Days&submit=Forward+Logistics&submit=Reverse+Logistics
Если я удалить функцию filledin() из OnClick я получаю правильно отформатированный URL.
http://wbv-sat-p0001:1013/ViewData.aspx?assetDirection=Forward&filterType=Tech%20ID&filterValue=13293&categoryType=Status%207%20Duration%20Margin&categoryValue=14%20to%2027%20Days&techType=
Как решить эту проблему, чтобы она выполняла обе функции? Мне нужна проверка ошибок на входе «Технический идентификатор», а затем форматирование правильного URL-адреса при отправке после ввода технического идентификатора и выбора переключателя. Если это можно решить, я могу добавить проверку ошибок для переключателей.
Извините, я должен что-то упустить. Я не понимаю. где бы я добавил эту новую функцию в файл js? Я добавил его в начале, изменил onclick, чтобы указать на новую функцию, но мне кажется, что он не может проверить, заполнен ли fillin(), поскольку он еще не выполнил эту функцию. Извините за недостаток знаний. – Fil
Вы можете поместить функцию validateAndCheck в конец вашего js-файла и называть его onclick. После этого ваш входной узел должен выглядеть примерно так: –