2011-02-01 5 views
0

이것은이 코드로 수행하고자하는 요지입니다. HOUR를 앞두고 선택하고 싶습니다.이 코드는 그렇게합니다. 단지 4 개의 항목 만 선택합니다. 하지만 내 주요 문제는 누군가 11시 30 분 또는 12 자정을 선택하면 내 .NEXT() 코드가 작동하지 않는다는 것입니다. 이보다 더 좋은 해결책이 있습니까?jQuery UI 열기 대화 상자 실행 기능

$('.startTime222').change(function() { 
    adjustTime = $(".startTime option:selected").next().next().next().next().val(); 
}); 

<select name="startTime" class="startTime222 required" id="startTime2" > 
    <option value="00:00:00">12:00am</option> 
    <option value="00:15:00">12:15am</option> 
    <option value="00:30:00">12:30am</option> 
    <option value="00:45:00">12:45am</option> 
    <option value="01:00:00">1:00am</option> 
    <option value="01:15:00">1:15am</option> 
    <option value="01:30:00">1:30am</option> 
    <option value="01:45:00">1:45am</option> 
    ... 
</select> 

답변

1

마음에 대한 제안을 취한 후 조정 시간을 옵션에 별도의 속성으로 저장하십시오. 이렇게하면 조정 된 시간뿐만 아니라 선택한 시간에도 여전히 액세스 할 수 있습니다. 두 값을 모두 액세스 할 수 있으므로 더 이상 네 명의 자식을 앞으로 이동할 필요가 없습니다.

$('.startTime222').change(function() { 
    adjustTime = $(".startTime option:selected").attr("data-adjust"); 
}); 

<select name="startTime" class="startTime222 required" id="startTime2" > 
    <option value="00:00:00" data-adjust="01:00:00">12:00am</option> 
    <option value="00:15:00" data-adjust="01:15:00">12:15am</option> 
    <option value="00:30:00" data-adjust="01:30:00">12:30am</option> 
    <option value="00:45:00" data-adjust="01:45:00">12:45am</option> 
    <option value="01:00:00" data-adjust="02:00:00">1:00am</option> 
    <option value="01:15:00" data-adjust="02:15:00">1:15am</option> 
    <option value="01:30:00" data-adjust="02:30:00">1:30am</option> 
    <option value="01:45:00" data-adjust="02:45:00">1:45am</option> 
    ... 
</select> 
+0

시작 시간에 텍스트와 일치하는 값 속성에 의존하고 기본 종료에 대한 조정 만 사용하는 경우 각 옵션에 data-adjust = "01:00:00"속성을 추가 할 수 있습니다 시각. 텍스트에서 .val()을 사용하는 대신 .attr ('date-adjust')을 사용하십시오. –

+0

나는 당신의 응답을 얻지 못한다. 이것이 자정 12시에 문제를 어떻게 해결 하는가? – Justin

+0

JoeRobich가 의도 한 바는 사용자가 을 선택하면 . adjustTime = $ (". startTime 옵션 : 선택됨). attr ('data-adjust'); 당신에게 "01:00:00"의 조정 시간을 줄 것입니다. –