передать URL-адрес, хранящийся в виде строки в переменной, для отправки формы - PullRequest
2 голосов
/ 02 августа 2010

как я могу сделать тег формы, используя onsubmit (который выполняется при нажатии enter), который открывает целевое окно с заданным URL-адресом в виде строковой переменной?

что у меня есть:

<div id="row2">

 <!-- Intranet Search -->
 <form action="" onSubmit="urlGen(this);" method="get" target="_blank">
 <input type="text" id="intranet" size="15" value="Search Intranet.."
  onFocus="this.value = ''"
  onBlur="this.value = 'Search Intranet..'" / > 
 </form>

 <script language="javascript" type="text/javascript">
  function urlGen(f)
   {
    var i1 = "seg1";
    var i2 = f.intranet.value;
    var i3 = "seg3";

    var fullURL = i1 + i2 + i3;
    f.action = i1 + i2 + i3;

    //document.write(fullURL);

    return true;
   }
 </script>

<br><br>

 <a href="javascript: void(0)" onClick="urlGen();" target="_blank">
  <div id="submit" class="out"
   onMouseOver="document.getElementById('submit').className = 'over';"
   onMouseOut="document.getElementById('submit').className = 'out';">
   <span>Submit</span>
  </div>
 </a>
</div>

редактировать: до сих пор не решили эту проблему;любая помощь от кого-то более опытного с javascript будет принята с благодарностью!

1 Ответ

1 голос
/ 02 августа 2010

Вам необходимо присвоить элементу <input> значение "name":

<input type="text" name="intranet" id="intranet" size="15" ...

Кроме того, ваш код Javascript может использовать document.getElementById("intranet") для получения ссылки на элемент ввода.

Кроме того, хотя это не имеет непосредственного отношения, размещение <div> внутри тега <a> недопустимо.

...