我有一個下拉框中的寬度列表。它們是動態的,因爲每個產品都有不同的寬度,所以我設置了代碼來查找最小值和最大值。然後以1爲增量設置下拉列表。基於使用php和javascript的另一個動態下拉框的選擇來禁用下拉框
旁邊的寬度是1/8「增量。例如,你可以選擇52 1/8。
如果最大寬度是92英寸比方說,1/8增量下拉框應該消失或禁用,因爲自92是最大..你不能選擇92 1/8。
如何使1/8盒子消失或禁用?這是我當前的下拉框代碼的一部分。
<select name="width_str" id="width_str" onchange="doCalc();" style="width:50px;">
<option value="">--</option>
<?php
$counter = $minwidthRS - 1;
$start = $minwidthRS;
for($start; $start < $maxwidthRS + 1; $start++) {
$counter = $counter + 1;
echo "<option value=".$counter.">".$counter."</option>";
}
?>
</select>
代碼用於與我想禁止或以上選擇的最大時消失1/3/8選擇下拉框。
<select name="widthfrac_str" id="widthfrac_str" onchange="doCalc();" style="width:50px;">
<option value="">--</option>
<option value="1/8">1/8</option>
<option value="1/4">1/4</option>
<option value="3/8">3/8</option>
<option value="1/2">1/2</option>
<option value="5/8">5/8</option>
<option value="3/4">3/4</option>
<option value="7/8">7/8</option>
</select>
我知道如何通過發送選定寬度值,使用AJAX PHP頁面,有比較,但我該怎麼發回的成功回調?我可以發送一些告訴容器1/8的測量下拉菜單來禁用或消失嗎?
非常感謝!如果你需要更多的代碼讓我知道。 doCalc()腳本基本上使用AJAX並將寬度發送到php處理頁面以便立即更新價格。
編輯(添加更多的代碼):
這裏是我的腳本的一部分..
<script type="text/javascript">
function doCalc(){
var roomX = $('#room_str').val();
... lots of variables set here
$.post('db_query.php',
{roomX:roomX, etc. etc. etc.},
function(data) {
data = $.parseJSON(data);
$('#roomname-placeholder').html(data.roomname);
// ... lots of placeholders and code here
});
return false;
};
</script>
不知道是否有幫助,但我學到了一些關於使用回調來改變輸入並用此替換它的值:$('input[name=x_login]').val(data.loginid);
如果有類似的代碼來簡單地更改其他下拉框禁用=禁用?那有意義嗎?我仍然在學習編程術語!
我不太明白的部分是 - 我檢查和比較這些數字在我的PHP頁面中的AJAX發佈?如果是這樣,我是否在腳本的成功回調部分執行切換和隱藏效果?我將在EDIT中發佈上述AJAX編碼的一部分。 – LITguy 2012-07-15 07:48:39
我不是一個JavaScript專家,我只知道基礎知識,所以我的答案可能不準確/完整。編輯我的答案。 – 2012-07-15 07:57:55
這樣做!我不知道你可以在JavaScript中這樣做。這開闢了一個全新的世界!非常感謝! – LITguy 2012-07-15 09:00:09