선택이 이루어질 때까지 제출 버튼을 숨기는 양식이 있습니다. 선택 항목이 유효하지 않은 경우 (예 : 재고가 없거나 제품을 사용할 수없는 경우) 제출 버튼이 표시되지 않습니다.'입력'을 눌러 양식 완성을 비활성화하십시오.
HTML/PHP :
<select id="choice" name="conc" required="required" onChange="appearButton();">
<option selected="selected" value="" disabled="disabled">select an option</option>
<option value="0">choice</option>
</select>
Qty: <input type="text" size="2" maxlength="2" value="1" name="qty" required="required"/><br/>
<span id="availability">Select Option to see Stock Availability</span><br/> <?php
//SQL related to checking if stock is avail. or not would go here
if ($checkstock->rowCount() == 0) {
echo "This item is currently unavailable.";
} else {
echo '<span id="cartbutton"></span>';
} ?>
JS :
function appearButton() {
if (($("#availability").text() != "Out of Stock")
&& ($("#availability").text() != "Select Options to see Stock Availability")) {
$("#cartbutton").html('<input type="submit" value="Add to Cart"/>');
} else {
$("#cartbutton").text("");
}
}
#availability
변경 #choice
드롭 선택에 따라서는 JSON 객체의 값을 잡는다.
내 선택은 입력 한 내용이 유효하지 않은 경우 제출 버튼이 존재하지 않지만 qty
입력란에 들어가서 제출 버튼이 없어도 제출한다는 것입니다.
특정 인스턴스에서 반환 될 때 양식 제출을 사용하지 않도록 설정하는 가장 좋은 방법은 무엇입니까? 항목이 유효한 경우 입력시 제출 양식을 작성하고 싶지 않지만 사용할 수없는 옵션을 원합니다.
난 항상 (봇) 모두 폼 요소를 제거하는 모든'매핑 할'id's을 할당하고, 속성 name'은' id는'ajax를 통한 제출을 위해 다른'name's에 있습니다. 그런 다음 제출을 위해'type = "button"'버튼을 사용합니다. –
왜 사용자가 잘못된 옵션을 선택하도록 허용합니까 (폼에 잘못된 값을 가진 옵션을 넣지 마십시오)? 양식이 제출 될 때가 아니라 이전에 양식이 제출 될 때 유효성 확인이 이루어져야합니다. – RobG
@RobG, 나는 불필요한 코드를 생략했다. 그러나 요지는 두 가지 드롭 다운이 있으며 주어진 조합은 주식 수준과 관련이있다. 특정 옵션과 관련된 모든 순열이 재고가 없기 때문에 양식 옵션을 사용 중지 할 수 없습니다. 주어진 조합의 모든 재고 수준을 가진 JSON 객체를 폴링합니다. 일부는 재고가 없거나 없을 수도 있습니다 (따라서 제출 버튼은 숨김). – gator