2017-07-31 187 views
0

我正在尝试在wordpress中进行图片上传所需的输入。 这个想法是上传一张图片,然后裁剪并保存。但是,由于输入标签会发生变化(您可以看到2个输入,一个是上传之前,另一个是之后),它们变成了“隐藏”的样式,这使得代码不可聚焦并引发错误。制作所需的图片字段

<fieldset <?php if ($current_user->roles[0] == "contributor") { 
         # code... 
         echo "disabled"; 
         } ?>> 



         <label for="postImage"><?php esc_html_e('ID Picture *:', ''); ?></label> 

         <?php esc_html_e('Image needs to be at least 250x250px', '');?> 

         <?php $baseurl = get_template_directory_uri().'/include/'; ?> 

         <div id="flash"></div> 
          <div id="ajaxresult"> 


          </div> 
          <div id="files"> 
          <?php 
          $photo_user = get_user_meta(get_current_user_id(), 'id_pic', true);?> 
          <?php 
          if (isset($photo_user)) { 
          echo "<img src='".esc_url($photo_user)."' id='uploadedimage' style='width:100%'>"; 
          } ?> 
         </div> 
         <span id="me" class="styleall button-small fileinput-button" style=" cursor:pointer;" > 

          <?php if(isset($photo_user)) { 
          esc_html_e('Click Here To Upload New Photo', ''); 
         } else { 
          esc_html_e('Click Here To Upload Photo', ''); 
         } 
         ?><input id="meimg" type="file" name="files[]" > 

         </span> 


         <div id="load"></div><span id="mestatus" ></span> 


         <div id="status"></div> 
         <div id="cropme" style="display:none;"><a class="button-small crop-me"><?php esc_html_e('CROP IMAGE', ''); ?></a></div> 

         <div id="cancelme0" style="display:none;"><a class="button-small"><?php esc_html_e('cancel', ''); ?></a></div> 


         <div id="cancelme" style="display:none;"><a class="button-small"><?php esc_html_e('cancel', 'fundingpress'); ?></a></div> 
           <br> 
          <input type="hidden" name="postImage" id="postImage" value="" /> 

          </fieldset> 

回答

0

我使用javascript解决了此问题。我添加了必需的属性到第一输入,以及对作物Me按钮,这意味着已经增加了一个形象,我的onclick行动后取出所需的属性,比如:为你解答

<div id="cropme" style="display:none;"><a class="button-small crop-me" onclick="document.getElementById('meimg').required = false;"> 
0

你必须做一个条件时显示第一个输入字段,当显示第二与if语句要么这样或定义一个布尔变量来决定如何显示,如果属实,什么控制它如果为假

if(!isset($_POST["files"])){ 
    ?> 
     <span id="me" class="styleall button-small fileinput-button" style=" cursor:pointer;" > 
    <?php if(isset($photo_user)) { 
           esc_html_e('Click Here To Upload New Photo', ''); 
          } else { 
           esc_html_e('Click Here To Upload Photo', ''); 
          } 
          ?><input id="meimg" type="file" name="files[]" > 
    } 
    ?> 
    </span> 
    <?php 
    else { 
    ?> 
     <div id="load"></div><span id="mestatus" ></span> 


          <div id="status"></div> 
          <div id="cropme" style="display:none;"><a class="button-small crop-me"><?php esc_html_e('CROP IMAGE', ''); ?></a></div> 

          <div id="cancelme0" style="display:none;"><a class="button-small"><?php esc_html_e('cancel', ''); ?></a></div> 


          <div id="cancelme" style="display:none;"><a class="button-small"><?php esc_html_e('cancel', 'fundingpress'); ?></a></div> 
            <br> 
           <input type="hidden" name="postImage" id="postImage" value="" /> 

           </fieldset> 

    <?php 
    } 
    ?> 
+0

谢谢,但我尝试了一些工作 –