我如何让jJvascript / jQuery评估输入的最后一个单词?
示例(doe ra fa la si do)仅评估做
与Google的搜索框非常相似。我只想在空格后进行评估,并通过Ajax调用搜索该单词。
这是我尝试过的代码:
$(document).ready(function() {
ajaxcall();
var x = setInterval(ajaxcall, 1000);
function ajaxcall() {
var nameid = $('#word').val();
if (nameid.match(/^\s*$/)) {
// nothing, or nothing but whitespace
} else {
$.get('mysqlquery.php?id=' + nameid, function(data) {
$('#loadbox').append(data + ' ');
});
}
}
});
答案 0 :(得分:1)
$(document).ready(function(){
ajaxcall();
var x = setInterval(ajaxcall,1000);
function ajaxcall(){
var nameid = $('#word').val().split(' ');
nameid = nameid[nameid.length-1];
if (nameid.match(/^\s*$/)) {
// nothing, or nothing but whitespace
} else {
$.get('mysqlquery.php?id='+nameid, function(data){
$('#loadbox').append(data+' ');
});
}
}
});
答案 1 :(得分:1)
尝试使用.split()
将字符串转换为数组,然后使用.pop()
返回数组中的最后一个元素:
function lastWord(subject)
{
var ar = subject.split(" ");
return ar.pop();
}
lastWord("some amazing sentence"); // sentence
答案 2 :(得分:0)
这应该返回字符串的最后一个单词:
var str = 'doe ra fa la si do',
patt = /[^\s]*$/;
alert(str.match(patt)); // Returns `do`