变量?这很容易:
var h = 20;
var v = 40;
$(function() {
$('[name=updateInterface]').click(function() {
$("#interfaceScreen").load("modules/interface/interfaceScreen.php?h=" +
encodeURIComponent(h) + "&v=" + enocdeURICompoennt(v));
});
});
只要确保你用encodeURIComponent()
逃脱它们。
当然,你可以从任何地方一样让他们:
<input type="text" id="txth">
<input type="text" id="txth">
然后:
var h = $("#txth").val();
var v = $("#txtv").val();
编辑:好了,从你的意见,你要发送从信息我收集服务器返回到客户端,以便客户端可以将其发回。首先是做你的点击处理程序在非jQuery的一种方式:
<a href="javascript:handle_click(17,43);">Click me</a>
有:
function handle_click(h, v) {
$("#interfaceScreen").load("modules/interface/interfaceScreen.php?h=" +
encodeURIComponent(h) + "&v=" + enocdeURICompoennt(v));
}
这可能是最简单的解决方案。如果你想坚持使用jQuery点击处理程序,你总是可以将这些信息嵌入到属性或隐藏元素中。例如:
<a href="#" class="special"><div class="special-h">12</div><div class="special-v">34</div>Click me</a>
与CSS:
a.special div { display: none; }
和:
$(function() {
$("a.special").click(function() {
var h = $(this).children("special-h").text();
var v = $(this).children("special-v").text();
$("#interfaceScreen").load("modules/interface/interfaceScreen.php?h=" +
encodeURIComponent(h) + "&v=" + enocdeURICompoennt(v));
});
});
有关于这一主题的许多变化。
最后,我会指出,我会建议你不要做属性查找选择器,你可以避免它。为锚定一个类和/或ID并使用其中的一个来分配事件处理程序。也可以在“.special”之上使用类似“a.special”的选择器(出于性能原因)。
我不会发送链接的变量,原因是我会有多个链接,但具有不同的变量。 因此,点击不同的链接将向函数发送2个不同的变量。 – Stanni 2009-10-18 14:36:11