我创建了多个图像上传元字段, 我正在写主题的Functions.php,
中的jQuery代码<script type="text/javascript">
jQuery(document).ready(function($){
jQuery('#add-row').on('click', function() {
var row = jQuery('.empty-row.screen-reader-text').clone(true);
row.removeClass('empty-row screen-reader-text');
row.insertAfter('#repeat_div table:last');
return false;
});
jQuery('.remove-row').on('click', function() {
jQuery(this).parents('table').remove();
return false;
});
});
</script>
<script type="text/javascript">
jQuery(document).ready(function() {
jQuery('.st_upload_button').click(function() {
targetfield = jQuery(this).prev('.upload-url');
tb_show('', 'media-upload.php?type=image&TB_iframe=true');
return false;
});
window.send_to_editor = function(html) {
imgurl = jQuery('img',html).attr('src');
jQuery(targetfield).val(imgurl);
tb_remove();
}
});
</script>
但该代码与wordpress中的媒体上传按钮相冲突,图片未上传, 我该如何解决这个问题,尽快指导我
由于 阿迪尔
答案 0 :(得分:1)
您可以使用此脚本简单地实现此功能:
/* include wordpress media uploader script */
wp_enqueue_media();
/* now html field and button */
<div class="uploader">
<input id="_unique_name" name="settings[_unique_name]" type="text" />
<input id="_unique_name_button" class="button" name="_unique_name_button" type="text" value="Upload" />
</div>
<div><img src="" width="100" id="testimage"></div>
/*now scripts */
<script type="text/javascript">
jQuery(document).ready(function()
{
jQuery('#_unique_name_button').click(function()
{
wp.media.editor.send.attachment = function(props, attachment)
{
jQuery('#_unique_name').val(attachment.url);
jQuery('#testimage').attr('src', attachment.url);
}
wp.media.editor.open(this);
return false;
});
});
</script>
答案 1 :(得分:0)
在jquery中使用event.preventDefault()
。
jQuery('.remove-row').on('click', function(e) {
jQuery(this).parents('table').remove();
e.preventDefaults();
return false;
});