2012-12-21 30 views
1

我有一個輸入文本字段和鏈接,按我想的輸入域的這樣一個包含值URL鏈接時:HTML加盟輸入textfied值HREF鏈接被點擊時

如果我在文本字段上輸入roma我想要轉到頁面treatment/exportPDF/roma

我的嘗試:

<script> 
    function getUsername(){ 
     return $(".username").Text(); 
    } 
</script> 
<div class="container"> 
    <ul> 
     <li> 
      <label class="Paragraph">Select a username</label> 
      <p> 
       <label>Username</label> 
       <input name="username" type="text" class="longInput1"/> 
       <span class="errorMessage"></span> 
      </p> 
      <p> 
       <a class="smallLink" href="<?php echo URL2; ?>Treatment/exportPDF/"> PDF</a> 
      </p> 
      <p> 
       <a class="smallLink" href="">Excel</a> 
      </p> 
     </li> 
    </ul> 
</div> 

所以我怎麼能調用函數getUsername()從我HREF?我的腳本也錯了嗎?

回答

3

嘗試

<script> 
    function getURL(){ 
     document.location = "<?php echo URL2; ?>Treatment/exportPDF/"+ $(".username").Text(); 
    } 
</script> 
<div class="container"> 
    <ul> 
     <li> 
      <label class="Paragraph">Select a username</label> 
      <p> 
       <label>Username</label> 
       <input name="username" type="text" class="longInput1"/> 
       <span class="errorMessage"></span> 
      </p> 
      <p> 
       <a class="smallLink" href="javascript:getURL()"> PDF</a> 
      </p> 
      <p> 
       <a class="smallLink" href="">Excel</a> 
      </p> 
     </li> 
    </ul> 
</div> 
+0

它帶我到這個URL'http:// localhost/Mar7ba2/Treatment/getURL()' –

+0

我愛你的方式,你會告訴我如何通過URL嗎? –

+0

@tottiroma我編輯了答案 – Amber

3

是我的腳本也錯了?

$(".username").Text(); 

應該是:

var value = $("input[name='username']").val(); 
window.location = "/treatment/exportPDF/" + value; 

更改HTML到:

<a class="smallLink" href="#" onclick="getUsername()"> PDF</a> 
  • text(幾乎)等於innerHTML
  • val等於value
  • .在CSS選擇器是一個類選擇器。
+0

我怎麼能從HTML中調用它? –

+0

你會告訴我,我應該用HTML寫什麼來從我的腳本調用函數? –

+0

@tottiroma,你可以這樣寫:' PDF',但你需要用'window.location = ...' – gdoron

2

你想用你的鏈接的onmousedown,請在href屬性的鏈接,並修改它onclick,像這樣:

<a href="<?php echo URL2; ?>Treatment/exportPDF/" onmousedown="this.href = this.href + $('[name=username]').val(); this.onmousedown = '';"> 
+0

它給了我很長的url不包含我的文本字段值 –

+0

那麼,你可能已經複製'我的php的東西',糾正了答案,以包含您的原始網址。這應該正常工作。 window.location也是一個有效的解決方案。 –

+0

使用onmousedown而不是onclick是否有缺點?我將在移動/平板電腦友好的網站上使用它。 – John

1

使用此代碼在您的腳本中

 <script> 
      function getUsername(){ 
        alert(document.getElementById("username").value) 
       return (document.getElementById("username").value) 
      } 
     </script> 

並給id到文本框

  <input id=="username" name="username" type="text" class="longInput1"/> 
+0

因爲我們已經有了一個名字,所以您不必爲輸入字段提供一個id,請參閱下面的答案。 –