我希望如果输入的值等于其中一个单词ed Or d Or i Or ei
已完成执行操作。我无法在首次运行页面中更改值输入value="ed"
。我该怎么办?
示例: http://jsfiddle.net/ZsYdY/3/
<input type="text" value="ed">
<div class="code"></div>
function ticket_check() {
//var val = 'ticket_code=' + $('.ticket_code').val();
var input_val = $('input').val();
if (input_val == 'ed Or d Or i Or ei') {
$('.code').empty().hide().fadeIn('slow').append('It is ok');
} else {
$('.code').fadeOut('slow', function () {
$(this).hide().fadeIn('slow').append('It is not ok');
})
}
}
$('.input').live('keyup change', function () {
ticket_check();
var input_val = $('input').val();
if (input_val == 'ed Or d Or i Or ei') {
$('.code').fadeOut('slow', function () {
$(this).hide().fadeIn('slow').append('It is not oooooooookkkkkkkkk');
})
}
});
ticket_check()
答案 0 :(得分:1)
使用以下代码检查输入是否等于给定建议之一:
//Case-sensitive
'ed d i ei'.split(' ').indexOf(input_val) != -1
//Alternatively, case-sensitive:
['ed', 'd', 'i', 'ei'].indexOf(input_val) != -1;
//Case-insensitive:
'ed d i ei'.split(' ').indexOf(input_val.toLowerCase()) != -1
此示例背后的概念是:“在有效值列表中拆分字符串和检查当前值是否出现”。 例如:
function ticket_check() {
//var val = 'ticket_code=' + $('.ticket_code').val();
var valid_values = 'ed d i ei'.split(' ');
var input_val = $('input').val().toLowerCase();
if (valid_values.indexOf(input_val) != -1) {
//Rest of code
答案 1 :(得分:1)
if (input_val == 'ed Or d Or i Or ei') {
需要:
if (input_val == 'ed' || input_val == 'd' || input_val == 'i' || input_val == 'ei') {
$('.input')
在您的示例中应为$('input')
答案 2 :(得分:1)
两件事....你的输入上没有类'.input'。所以这一行应该是这样的
$('input').live('keyup change', function () {
此外,正如其他人所说......你或者搞砸了。看看上面的答案之一。