如何在textarea中获取两个特殊符号(%)之间的文本?

时间:2013-06-24 12:36:17

标签: javascript jquery

如何在textarea中获取两个%符号之间的文本?我尝试使用jquery .keypress()事件并将结果提升到一定水平。但是如果我删除或按退格键,则不会触发按键事件。如果我使用.keyup()或.keydown(),如何检测“%”字符......这是我尝试过的

var flag = false,
string = '';
$("#target").keypress(function(event) {
//  console.log(event,String.fromCharCode(event.keyCode));
if ( event.which == 37 ) {  
 if(flag === true){
  flag = false;      
  alert("REsult: "+ string.slice(1));
 }      
 flag= true;
}

//  console.log(flag, event.which);
if(flag === true){
 string = string + String.fromCharCode(event.which);
}
 console.log(string);   
});

以下是bin

我是走在正确的道路上还是有其他更好的方法......请帮助我提出建议

2 个答案:

答案 0 :(得分:1)

试试这个,

var test_str = "text to get % Other text.... migh have % s ...";
var start_pos = test_str.indexOf('%') + 1;
var end_pos = test_str.indexOf('%',start_pos);
var text_to_get = test_str.substring(start_pos,end_pos)
alert(text_to_get);

答案 1 :(得分:0)

  

如何在textarea中的两个%符号之间获取文本???

var matches = /%([^%]*)%/.exec($("#target").val());
var result = matches ? matches[1] : null;