对我而言真实交易问题,因为我无法解决它。第一次使用jQuery(“粘贴”)不会获取或传递值
jQuery脚本我写了应该抓住的“粘贴”操作的输入值,并通过AJAX传递到笨控制器。
它实际上工作正常,但只有当我贴的第二个(进一步)时间的价值。当我更改(“粘贴”)到某个div或其他DOM元素的on(“click”)时,它也可以正常工作。
脚本:
<script type="text/javascript">
$("#link").on("paste", function(){
$("#thumbs").empty().html("<p>loading</p>");
var postData = {
'url' : $("#link").val()
};
$.ajax({
type: "POST",
url: "/thumb/ajax/",
data: postData , //assign the var here
success: function(msg){
$("#thumbs").html("Data Saved: " + msg);
}
});
});
任何帮助,将不胜感激
编辑:多了一个提示。
val()在这个特定的脚本中实际上取值为之前的粘贴操作。 如果我写了一些东西给这个输入,然后删除它并粘贴其他东西,它实际上会传递给控制器我写的值,而不是我粘贴的值。
EDIT2: OK,我敢肯定这是jQuery的问题糊。
<script type="text/javascript">
$("#link").on("paste", function(){
$("#thumbs").empty().html("<p>loading</p>");
var postData = {'url' : $("#link").val() };
$("#thumbs").html($("#link").val());
});
</script>
该脚本应该将输入值添加到div#thumbs。它不适用于第一次粘贴操作。第二它实际上是工作。
编辑3:我的朋友给了我一个提示。 on(“粘贴”)适用于“粘贴”动作,并且在粘贴实际完成之前。如果有人给我一个提示,我可以继续前进,如何超时以获取粘贴值。
我希望一小时前看过这篇文章。 jquery可以让我浪费生命中的那个小时^^ – azzy81 2013-01-17 12:18:29
你应该可以在timeout设置为0的情况下做到这一点。 – 2015-03-02 19:31:58