基本上,我想使用图像输入,但我不想提交表格来获得结果,我想从点击图像输入中获取X和Y坐标,然后通过AJAX。
现在,我意识到我可以将图像输入以自己的形式输入,然后提交到隐藏的iframe 并检查间隔的结果(我正在为ajax上传器执行此操作现在),但它似乎有点蠢。 我也意识到我可以通过任何点击获取我的鼠标位置,这不是我要求的
我可以像这样使用图片类型的输入吗?有没有办法点击图像输入只是设置它的值然后调用一些JavaScript来执行我的ajax调用?
答案 0 :(得分:2)
我正在处理我的旧问题,但我发现这个问题从来没有得到充分的回答。我不记得我是否已经“回来了”,但我现在知道如何做到这一点。
只需检查图像输入的click事件的offsetX和offsetY。它应该偏移到您单击的图像输入。
$('input[type=image]').click(function(e) {
//alert the clicked position.
alert(e.offsetX + ',' + e.offsetY);
});
答案 1 :(得分:1)
看看这里: http://jsfiddle.net/pfLtm/
如您所见,该代码可以很容易地修改为:
$("#MyInput").click(function(event) {
var oPos = $(this).position();
$(this).attr("mouse_x", (event.pageX - oPos.left));
$(this).attr("mouse_y", (event.pageY - oPos.top));
return false;
});
这会将点击的X和Y位置存储为元素本身的属性。 测试用例:http://jsfiddle.net/pfLtm/1/
例如,您可以调用AJAX调用,而不是返回false。