2013-07-03 1 views
0

가까이 아무것도 찾을 수 없습니다 변경되지 않은 아이를 유지하면서 요소 코드를 대체하는 것은 간다 :jQuery를 - 충분히 내가 지금 여기 내 특정 문제에 대한 작업을 할 수 있음을 원하는에

는 내가 필요 선택 버튼이있어 페이지로드 후 onchange 매개 변수를 변경하고 그 앞에 양식 요소를 추가하십시오. 여기

<select name="dnn$ctr2027$Fixture$ddlRounds" onchange="javascript:setTimeout('__doPostBack(\'dnn$ctr2027$Fixture$ddlRounds\',\'\')', 0)" id="dnn_ctr2027_Fixture_ddlRounds"><option value="">---All Rounds---</option> 
<option selected value="337"></option> 
<option value="353">Round 2</option> 
<option value="354">Round 3</option> 
<option value="338">Round 4</option> 
<option value="348">Round 5</option> 
etc 
etc..... 
</select> 

내가 발견 한 다른 답변에서 지금까지 조립할 조각을 관리했습니다 내용은 다음과 같습니다 : 다음은 HTML입니다 이것은 선택의 데이터를 교체하고 형태를 추가하는 작업

var divToRemove = jQuery('#dnn_ctr2027_Fixture_ddlRounds'); 
var children = elToRemove.children().detach(); 
divToRemove.replaceWith('<form name="roundSelect" action="#tround" method="get"><select name="dnn$ctr2027$Fixture$ddlRounds" onchange="document.roundSelect.submit();" id="dnn_ctr2027_Fixture_ddlRounds">').append(children); 

그것 앞에 있지만 그것은 나를 자식 옵션 요소를주지 않는 대신 빈 선택 필드가 날 나뭇잎.

아이디어가 있으십니까?

답변

0

당신은 .attr()와 함께 .wrap()을 사용할 수 있습니다 - JQuery와 틱 solotion에 대한 .change() 이벤트 핸들러를 사용하여/onchange를 값을 변경

$('#dnn_ctr2027_Fixture_ddlRounds').attr('onchange', 'document.roundSelect.submit();').wrap('<form name="roundSelect" action="#tround" method="get"/>'); 

또는 더 나은

$('#dnn_ctr2027_Fixture_ddlRounds').change(function(){ 
    document.roundSelect.submit(); 
}).wrap('<form name="roundSelect" action="#tround" method="get"/>'); 

데모 : Fiddle

+0

감사합니다 아룬,이 솔루션은 나를 위해 일한 내게 Jquery에 대한 몇 가지 가치있는 통찰력을 주셨습니다 :) –