ボタンクリックでJavascriptを使って<a/>
タグのhref
属性値を変更する方法?
<script type="text/javascript">
function f1()
{
document.getElementById("abc").href="xyz.php";
}
</script>
<a href="" id="abc">jhg</a>
<a href="" id="" onclick="f1()">jhhghj</a>
href
がなくても、クリックすると現在のページがリロードされるので、次のようなものが必要です。
<a href="#" onclick="f1()">jhhghj</a>
または、このようなスクロールを防ぎましょう。
<a href="#" onclick="f1(); return false;">jhhghj</a>
またはreturn false
関数のf1
と
<a href="#" onclick="return f1();">jhhghj</a>
....または、控えめな方法:
<a href="#" id="abc">jhg</a>
<a href="#" id="myLink">jhhghj</a>
<script type="text/javascript">
document.getElementById("myLink").onclick = function() {
document.getElementById("abc").href="xyz.php";
return false;
};
</script>
Nick Carverが行ったこととまったく同じですが、DOMのsetAttributeメソッドを使用した方が良いと思います。
<script type="text/javascript">
document.getElementById("myLink").onclick = function() {
var link = document.getElementById("abc");
link.setAttribute("href", "xyz.php");
return false;
}
</script>
これは1行追加のコードですが、構造的には優れています。
href
属性を削除します。
<a id="" onclick="f1()">jhhghj</a>
リンクスタイルが重要ならば:
<a href="javascript:void(f1())">jhhghj</a>
<a href="#" id="a" onclick="ChangeHref()">1.Change 2.Go</a>
<script>
function ChangeHref(){
document.getElementById("a").setAttribute("onclick", "location.href='http://religiasatanista.ro'");
}
</script>
これが私の考えです。ユーザーが[送信]ボタンを押したときに、テキストボックスから値を収集してURLを作成する必要がありました。
<html>
<body>
Hi everyone
<p id="result"></p>
<textarea cols="40" id="SearchText" rows="2"></textarea>
<button onclick="myFunction()" type="button">Submit!</button>
<script>
function myFunction() {
var result = document.getElementById("SearchText").value;
document.getElementById("result").innerHTML = result;
document.getElementById("abc").href="http://arindam31.pythonanywhere.com/hello/" + result;
}
</script>
<a href="#" id="abc">abc</a>
</body>
<html>
クリックするとリンクが動的に変わるようにするには:
<input type="text" id="emailOfBookCustomer" style="direction:RTL;"></input>
<a
onclick="this.href='<%= request.getContextPath() %>/Jahanpay/forwardTo.jsp?handle=<%= handle %>&Email=' + document.getElementById('emailOfBookCustomer').value;" href=''>
A dynamic link
</a>