如果用户输入了路径,则返回拆分值,否则返回空白

时间:2017-04-21 06:45:48

标签: jquery dynamic split return conditional-statements

我需要动态显示用户输入的路径的名称和拆分路径。 为此,我拆分了用户输入的路径并仅抓取其中的某些部分。对于例如如果用户输入路径为:

/content/mypath/myfolder/about/images/abc.jpg 然后我正在显示images / abc.jpg。

但是,假设用户只输入名称而不输入路径,至少应该应用名称&在那种情况下显示。

但每次进入路径时它都会显示0。 我该如何解决这个问题?

$(document).ready(function(){
  $('#getData').click(function(){
    var name = $('#name').val();
    var imgPath = $('#imgPath').val();
    var newPath = imgPath.match(/images\/.*$/i);
    $('.container').append(
      $('<p>').text(name),
      $('<p>').text(function(imgPath){
        return newPath ? imgPath : $('#imgPath').val();
      })
    );
    //console.log(slicedPath);
  });
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.0/jquery.min.js"></script>
Name: <input type="text" id="name">
Image path: <input type="text" id="imgPath">
<div class="container">

</div>
<button id="getData">Click</button>

1 个答案:

答案 0 :(得分:1)

这可以解决您的问题。

我只更改了您的退货声明return newPath != null ? newPath : imgPath;

&#13;
&#13;
$(document).ready(function(){
  $('#getData').click(function(){
    var name = $('#name').val();
    var imgPath = $('#imgPath').val();
    var newPath = imgPath.match(/images\/.*$/i);
    $('.container').append(
      $('<p>').text(name),
      $('<p>').text(function(imgPath){
        return newPath != null ? newPath : $('#imgPath').val();
      })
    );
    //console.log(slicedPath);
  });
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.0/jquery.min.js"></script>
Name: <input type="text" id="name">
Image path: <input type="text" id="imgPath">
<div class="container">

</div>
<button id="getData">Click</button>


/content/mypath/myfolder/about/images/abc.jpg
&#13;
&#13;
&#13;