Я хочу ограничить только 0 или 1 в теге.
<td contenteditable id='test'>
#input 0/1
</td>
Любые идеи о том, как это сделать, используя js или css?
Благодарю!
Смотрите эту скрипку демо обновление, так как.live() является устаревшим, пожалуйста, используйте .on
вместо .live
$("td input").on("keypress",function(){
var alpha = new Array();
alpha = [ "0","1"];
var charpressed = String.fromCharCode(event.which);
if(this.value.length>=1){
return false;
}
if (!($.inArray(charpressed, alpha) > -1)) {
return false;
}
else
{
$("#required").html('');
}
});
Обратите внимание на обновленную скрипку здесь.
вы также можете использовать это
$("#test").keypress(function (e) {
alert(e.keyCode);
if(e.keyCode == 48 || e.keycode == 49) {
alert("true");
return true;
} else {
alert("false");
return false;
}
});
Самый простой способ сделать это - проверить значение innerHTML для td. Примером этого может быть:
var myTD = document.getElementById('test');
if( myTD.innerHTML != '1' || myTD.innerHTML != '0' ) {
myTD.innerHTML = '';
alert("Incorrect value.");
}
Это действительно зависит от того, где вы получаете данные для TD.
Для контентного ТД вы можете использовать прослушиватель событий "DOMCharacterDataModified".