일련의 "관련"선택이있는 페이지가 있습니다. 미리 선택된 옵션이 없으면 모든 것이 잘 작동합니다. 코드에 "경고"를 넣으면 작동하도록 "사전 선택"을 설정할 수 있지만 작동하지 않으면 작동하지 않습니다. 예ajax로 생성 한 후 "선택 옵션"선택
:
function loader(){
if ($("#prod_1").val() > 0){
switchBatch(1);
$('#batch_1').val('15');
updateMax(1);
}
if ($("#prod_2").val() > 0){
switchBatch(2);
alert('yup');
$('#batch_2').val('35');
updateMax(2);
}
}
$(function() {
loader();
});
갖고 두 번째 "경고 ('응을');" 그것은 작동하지만 첫 번째는 작동하지 않습니다.
"switchBatch()"는 (ajax 호출에서) 옵션을 일괄 선택 컨트롤로로드하는 함수입니다. 두 인스턴스 모두 옵션을로드하지만 두 번째 인스턴스 만 올바른 옵션을 선택합니다.
제안 사항?
랜스 여기
전체 일 :
<script>
maxVals = [];
function switchBatch(idNum){
maxVals = [];
$("#max_"+idNum).val('');
$.ajax({
type: "POST",
url: "/cfc/product.cfc?method=pialJson",
data: ({
productID: $("#prod_"+idNum).val()
}),
dataType: "json",
success: function(result){
options = '';
var colMap = new Object();
for(var i = 0; i < result.COLUMNS.length; i++) {
colMap[result.COLUMNS[i]] = i;
}
for (var i = 0; i < result.DATA.length; i++){
options += '<option value="' + result.DATA[i][colMap["BATCHID"]] + '">' + result.DATA[i][colMap["BATCHNAME"]]+ '</option>';
maxVals[i] = result.DATA[i][colMap["INSTOCK"]];
}
$("select#batch_"+idNum).html(options);
updateMax(idNum);
}
});
}
function updateMax(idNum){
thisOne = $("#batch_"+idNum).attr("selectedIndex");
$("#max_"+idNum).val(maxVals[thisOne]);
checkMax(idNum);
}
function checkMax(idNum){
$("#qty_"+idNum).removeClass('red');
if ($("#qty_"+idNum).val() > $("#max_"+idNum).val()){
$("#qty_"+idNum).addClass('red');
}
}
function loader(){
if ($("#prod_1").val() > 0){
switchBatch(1);
alert('yup');
$('#batch_1').val('<cfoutput>#batch_1#</cfoutput>');
updateMax(1);
}
if ($("#prod_2").val() > 0){
switchBatch(2);
alert('yup');
$('#batch_2').val('<cfoutput>#batch_2#</cfoutput>');
updateMax(2);
}
}
$(function() {
loader();
});
</script>
트릭을 한 Thanks Patrick. 이제 나는 왜 lol을 알아 내야 만 하는가? – Lance