在我的CakePHP应用程序中,我有一个带有此标记的视图:
<div class="copy" id="share-copy"></div>
<input type="text" value="http://site.com/v/<?php echo $imageInfo[0]['Image']['hash']; ?>" name="share" />
share-copy
DIV是一个小的16x16 div,它包含zClip的flash元素。我正在使用这样的zClip:
$('#share-copy').zclip({
path: '/swf/ZeroClipboard.swf',
copy: $('input[name="share"]').val(),
afterCopy: function(){}
});
现在,它成功复制了名为share
的输入元素中的文本。但是,当我使用jQuery更改该输入元素中的文本时:
$('input[name="share"]').attr('value', 'something');
再次单击zClip,它不会复制新值。如何让zClip在点击时准确复制share
输入内的内容?
答案 0 :(得分:0)
问题在于
$('#share-copy').zclip({
path: '/swf/ZeroClipboard.swf',
copy: $('input[name="share"]').val(),
afterCopy: function(){}
});
创建一个对象:
{path: '/swf/ZeroClipboard.swf', copy: $('input[name="share"]').val(), afterCopy: function(){}}
创建对象时设置属性copy
的值,因此不会更新。
我想我们可以使用函数解决它:
$('#share-copy').zclip({
path: '/swf/ZeroClipboard.swf',
copy: function(){return $('input[name="share"]').val();},
afterCopy: function(){}
});