를 사용하여 텍스트 필드에 문자를 계산하는 데 도움이 필요 .여기 내 문제가 jQuery를
텍스트의 길이가 5자인 경우 "what"함수를 트리거하는 $ .click 함수도 추가합니다. 5 자 미만인 경우이 클릭 기능을 "사용 중지"해야합니다.
하지만 말하기가 쉽지 않습니다. 이것은 내가 지금 가지고있는 코드입니다. 작동하지 않습니다.
<input id="userName" name="userName" class="textfield50pc" type="text" maxlength="50" value=""/>
jQuery('#userName').keydown(function()
{
if((jQuery(this).val().length + 1) == 5)
{
jQuery("#guide_btnCreateGuide").css({'background-position':'top', 'cursor':'pointer'});
jQuery("#guide_btnCreateGuide").click(function() { do something });
}
else if((jQuery(this).val().length - 2) < 5)
{
jQuery("#guide_btnCreateGuide").css({'background-position':'bottom', 'cursor':'default'});
// Here I really would like to disable whatever I added in the OnClick above. But how?
}
});
이 작업을 수행하는 데 도움이 필요합니다.
UPDATE 여기
이 스레드 another thread 도움에 기초 해결책이다.
jQuery('#input_guideName').keyup(function(e)
{
if(this.value.length == 5)
{
jQuery("#guide_btnCreateGuide").css({'background-position':'top', 'cursor':'pointer'});
jQuery("#guide_btnCreateGuide").bind('click', function() {
createNewGuide();
});
}
else if(this.value.length < 5)
{
jQuery("#guide_btnCreateGuide").css({'background-position':'bottom', 'cursor':'default'});
jQuery("#guide_btnCreateGuide").unbind('click');
}
});
그러나 나는 5보다 적은 각 keudown에서 "바인딩 해제"하겠습니까? 어쩌면 상관 없어요? 내가 가지고있는 또 다른 문제는 값이 5보다 작 으면 버튼 색상을 변경할 수 없다는 것입니다. 카운트가 모두 잘못되었습니다. ( – Steven
keydown 함수가 약간 변경되었습니다.이 방법이 더 좋다고 생각합니다. 이벤트 바인딩을 유지하십시오. "카운트가 잘못되었습니다."라는 의미를 얻지 못했습니다. 버튼의 색상과 개수가 관련되어서는 안됩니다. 더 자세히 설명 할 수 있습니까? – munch
바인드/바인드 해제 아이디어는 다음과 같습니다. 하지만 위의 솔루션을 작동하지 않습니다. – Steven