识别元素内容并使用jquery动态修改

时间:2015-06-24 13:08:36

标签: javascript jquery

我正在使用像这样的jquery将文本注入页面

$("#myDiv").text(someWebServiceResponse.Data);

此返回的数据在大多数情况下是用逗号分隔的数字,但在某些情况下可以是   字符串作为标题,后跟数字

没有标题的返回数据案例

1,2,3,4,89,11

带标题的返回数据案例

MyTitle 1,2,3,4,89,11

带标题的返回数据案例

MyTitle2 1,2,35,4,89,14

这些标题和数字值是动态的。

如何识别返回的数据是否包含标题(可能使用typeofstring)和  修改此返回的字符串,标题为+ +,而不是下一行中的数字

3 个答案:

答案 0 :(得分:1)

鉴于数字仅由,而不是空格分割,您可以轻松测试字符串是否包含空格。

喜欢这个

function containsTitle(input) {
    return input.indexOf(' ') > 0;
}

...
if (containsTitle(someWebServiceResponse.Data)) {
   //TODO: split for 2 lines or whatever you need
}

答案 1 :(得分:1)

使用引用的示例,只需查找最后一个空格(如果有)并插入加号:

var lastSpace = yourString.lastIndexOf(' ');
if (lastSpace != -1) {
    yourString = yourString.substring(0, lastSpace) + " +" + yourString.substring(lastSpace);
}

直播示例:



test("1,2,3,4,89,11");
test("MyTitle 1,2,3,4,89,11");
test("MyTitle2 1,2,35,4,89,14");

function test(yourString) {
  var lastSpace = yourString.lastIndexOf(' ');
  if (lastSpace != -1) {
    yourString = yourString.substring(0, lastSpace) + " +" + yourString.substring(lastSpace);
  }
  snippet.log(yourString);
}

<!-- Script provides the `snippet` object, see http://meta.stackexchange.com/a/242144/134069 -->
<script src="http://tjcrowder.github.io/simple-snippets-console/snippet.js"></script>
&#13;
&#13;
&#13;

答案 2 :(得分:1)

试试这个: -

var isTitle=function(txt){
  var first=txt.substr(0,txt.indexOf(',')); 
  return !$.isNumeric(first);
}
 //here how to use
alert(isTitle('1,2,3,4,89,11'));
alert(isTitle('MyTitle 1,2,3,4,89,11'));

Demo