2013-06-12 1 views
0

저는 JQuery에 새로 익숙해졌습니다.하지만 보았지만 문제가 해결 될만큼 간단한 답변을 찾지 못했습니다 ... ID가있는 HTML 드롭 다운 목록 (db 파일로 생성 됨)이 있습니다. 모든 목록에 공통된 선택 항목. 이 "Add New"옵션을 사용하면 즉시 입력란을 열어서 새 이름을 입력 할 수있는 이벤트를 트리거 할 수 있습니다. &특정 DropDownList 옵션에 대한 jQuery 이벤트

<select name="NAME" id="NMDROP"> 
<option value=""></option> 
<option value="JOE">Joe</option> 
<option value="BOB">Bob</option> 
<option id="ADDNM" value="ADD">Add a New Name</option> 
</select> 

이것은 업데이트 pgm을 호출 할 수 있기를 기대하는 jQuery입니다.

jQuery(document).ready(function() { 

    //Jquery for Adding a SalesPerson 
    $("#ADDNM").click(function() { 
     if ($(this).is(":clicked")) { 

      jQuery.ajax({ 
       url: "Update.pgm", 
       type: "POST", 
       data: { 
        "task": "ajax_addsp", 
        "ajax_add": 'Y', 
        "NAME": NAME 
       }, 
       success: function() { alert("success:"); 
       }, 
       error: function() { alert("error on Add a New Name " + data); 
       } 
      }); 
     } 
    }); 
}); 

저는 많은 사람들이 근본적인 오류를 발견 할 수 있다고 확신합니다. 클릭 또는 변경 이벤트인지 확실하지 않습니다.이 사이트에서이 두 가지 방법을 모두 보았습니다.

+0

고유 ID는 'ADDNM'입니까? – j08691

+0

@ j08691 당신이 옳다는 것, 그 글로벌 속성 –

+0

@ j08691 불에 구운 것 같습니다. 옵션에 'id'속성이 없습니다. 보세요 : http://www.w3.org/TR/html-markup/option.html – WooCaSh

답변

0

클릭 대신 사용하여 드롭 다운에서 변경 이벤트를 사용하여 선택한 값이 "ADD"인지 확인.

$("#NMDROP").on("change", function(e) { 
    if($("#NMDROP").val() == "ADD") { 
     //ajax method here 
    } 
}); 
1

변화 코드가로 :

$("#NMDROP").on('change', function() { 
    if ($(this).val() === 'ADD'){ 
     //rest of code 
    } 
}); 

DEMO

+0

이벤트를 감지하고 있는지 확인하려면 다음과 같이 코드를 사용하십시오. – Sooze

+0

너무 두껍게해서 미안합니다. 아직 작동하지 않기 때문에 !! – Sooze

관련 문제