2017-01-25 5 views
0

どうにかしてこのコードが正しく動作しません。 すべてのボタンが表示され、成功したリンクの生成後に[生成]ボタンのみが非表示になります。同じサイトで別のダイアログが表示され、同じ方法で実装されていますが、うまく動作しています。jQuery UIのダイアログボタンが非表示にならない

$("#guest-link-dialog").dialog({ 
 
    autoOpen: false, 
 
    resizable: false, 
 
    height: 300, 
 
    width: 510, 
 
    modal: true, 
 
    draggable: false, 
 
    closeOnEscape: false, 
 
    open: function() { 
 
    $("#closeButton").hide(); 
 
    }, 
 
    buttons: [{ 
 
    id: 'generateButton', 
 
    text: 'Generieren', 
 
    click: function() { 
 

 
     $('#generatedlink').html('<img src="<?php echo Yii::app()->request->baseUrl; ?>/images/icons/32x32/loading.gif" alt="loading" style="padding-left:215px;padding-top:40px;" />'); 
 

 
     $.getJSON('<?php echo Yii::app()->request->baseUrl; ?>/index.php?r=ajax/guestlink&fileid=' + $(this).data('fileid') + '&count=' + $('#inputcount').val()) 
 
     .done(function(json) { 
 
      if (json.status == "SUCESS") { 
 
      $('#generatedlink').html('<a href="' + json.url + '" >' + json.url + '</a>'); 
 

 
      $('#generateButton').hide(); 
 
      $('#cancelButton').hide(); 
 
      $('#closeButton').show(); 
 
      } else if (json.status == "ERROR") { 
 
      $("#message").css('color', 'red'); 
 
      } 
 

 
      $("#message").text(json.message); 
 
     }) 
 
     .fail(function(json) { 
 
      $("#message").css('color', 'red'); 
 
      $("#message").text('Fehler'); 
 
     }); 
 
    } 
 
    }, { 
 
    id: 'closeButton', 
 
    text: 'Schliessen', 
 
    click: function() { 
 
     $(this).dialog('close'); 
 
    } 
 
    }, { 
 
    id: 'cancelButton', 
 
    text: 'Abbrechen', 
 
    click: function() { 
 
     $(this).dialog("close"); 
 
    } 
 
    }], 
 
    close: function() { 
 
    $("#message").css('color', ''); 
 

 
    $('#generatedlink').html(''); 
 

 
    $('#generateButton').show(); 
 
    $('#cancelButton').show(); 
 
    $('#closeButton').hide(); 
 
    } 
 
});

編集:

<div id="guest-link-dialog" title="Gast Link erstellen"> \t \t \t \t \t 
 
\t <form> 
 
\t \t <fieldset style="border:1;"> 
 
\t \t \t <label for="count">Anzahl m&ouml;gliche Downloads</label> 
 
\t \t \t <input type="text" name="count" id="inputcount" class="text ui-widget-content ui-corner-all" size="1" value="1" maxlength="1" /> 
 
\t \t </fieldset> 
 
\t </form> 
 
\t <div id="generatedlink" style="width:100%"></div> 
 
</div>

+2

HTMLも投稿できますか? – MannfromReno

+1

投稿されたHTMLにボタンが含まれていないため、ボタンの作成方法を示すために更新することはできますか? –

+0

ボタンはjQuery UIからのものです –

答えて

0

問題は、ボタンのIDは、すでに他のダイアログで使用されたました。 他のIDを指定すると問題が解決されます。

関連する問題