Próbuję utworzyć niestandardowe linki na podstawie różnych przycisków za pomocą tego html.
<input type="text" name="coachid" id="textbox1" value="22984">
<button class="txtLinky" id="Mickey">Mickey</button><br/>
<div id="linkified"></div>
<button class="txtLinky" id="Donald">Donald</button><br/>
<div id="linkified"></div>
Oto javascript
$(".txtLinky").click(function () {
$("#linkified").html("http:www.example.com/" + $(this).attr("id") + "?referringpId=" + $("#textbox1").val());
$("#linkified").linkify({
tagName: "a",
target: "_blank",
newLine: "n"
});
$("#linkified").css("padding", "100px");
});
Nie wiesz, jak uzyskać drugi przycisk do pracy. Pierwszy przycisk będzie działał, ale nie drugi.
tutaj jest http://jsfiddle.net/VFhK9/4/
Odpowiedzi:
2 dla odpowiedzi № 1Masz wiele div
elementy z id="linkified"
.
id
jest unikalny; nie możesz mieć więcej niż jednego formantu o tym samym identyfikatorze.
Możesz zmienić swoje id
atrybuty do class
atrybuty i zrób coś takiego:
<input type="text" name="coachid" id="textbox1" value="22984" />
<br />
<br/>
<button class="txtLinky" id="Mickey">Click Link</button>
<br/>
<div class="linkified">value</div>
<br/>
<button class="txtLinky" id="Donald">Click Link</button>
<br/>
<div class="linkified">value</div>
JACERY
$(".txtLinky").on("click", function ()
{
var $this = $(this),
id = $this.attr("id"),
text = $("#textbox1").val();
$this
.nextAll(".linkified:first")
.css({ padding: "10px" })
.html
(
"http://www.example.com/"
+ id
+ "?referringRepId="
+ text
)
.linkify
({
tagName: "a",
target: "_blank",
newLine: "n"
});
});