2010-07-13 134 views
0

這就是我總之。jQuery UI對話框顯示MySQL結果

我有一個動態列表。點擊它會彈出一個jQuery對話框,這一切都很棒,很棒。但是我想要做的是設置它,所以當有人點擊並彈出對話框時,它會顯示一個表單,以便他們可以更新結果,而不是加載一個全新的頁面。

我有對話框打開,但我不能將一個變量傳遞給對話框,它會告訴它MySQL的哪個ID拉動右邊的ROW來更新。

我希望這對某人有意義。任何幫助將不勝感激。

這是我的對話框

<div id="dialogUpdateDealer" title="Update Dealer"> 
<?php 

$dealerResult = $dealer->selectDealer($_SESSION['myId'], "[I NEED THIS ID]"); 
$oneDealer = mysql_fetch_array($dealerResult); 

?> 
<form class="formFill" id="dialogUpdateDealerForm" method="post" action="classes/class.Post.php?a=updateDealer"> 

    <label for="dealerName">Dealer Name</label><br /> 
    <input type="text" name="dealerName" value="<?php echo $oneDealer['dealerName']; ?>" /><br /> 

    <label for="cod1">cod1</label><br /> 
    <input type="text" name="cod1" value="<?php echo $oneDealer['code1']; ?>" /><br /> 

    <label for="code2">code2</label><br /> 
    <input type="text" name="code2" value="<?php echo $oneDealer['code2']; ?>" /><br /> 

</form> 
</div> 

代碼鏈接,打開對話框

<li id='<?php echo $dealerRow['dealerId']; ?>'> 
    <a href='classes/class.Post.php?a=updateDealer&dealerId="<?php echo $dealerRow['dealerId']; ?>' class='dialogForm' rel='dialogUpdateDealer'> 
    <?php echo $dealerRow['dealerName']; ?> 
    </a> 
</li> 

代碼的JavaScript對話框的OnClick

$('.dialogForm').click(function(){ 
    var id = $(this).attr('rel'); 
    $('#'+id).dialog('open'); 

    return false; 
}); 

代碼爲Javascript的代碼顯示對話框

$('#dialogUpdateDealer').dialog({ 
     autoOpen: false, 
     width: 400, 
     modal: true, 
     buttons: { 
      "Update": function() { 
       $("#dialogUpdateDealerForm").ajaxSubmit({ 
         target: ".dealers", 
         dataType: 'json', 
         clearForm: true, 
         success: function(response) { 
          alert("Show Success");       
         }, 
         error: function() { 
          alert("Sorry something went wrong");  
         } 
       }); 
       $(this).dialog("close"); 
      }, 
      "Cancel": function() { 
       $(this).dialog("close"); 
      } 
     } 
    }); 
+0

賈斯汀,你可以發佈你用來打開對話框的代碼嗎? – 2010-07-13 18:12:49

+0

嗨查理,我剛剛更新了帖子,包括更多的我的代碼。 – Justin 2010-07-13 18:45:47

+0

嗨,你可以做一個.append()或.text()來填充你的元素和你通過Ajax獲取的文本。爲了得到被點擊的元素的ID,你可以做一個$(this).attr(「id」)。val()來獲得你當前元素的ID ...我有點晚了,但它可以幫助某人;) – Alex 2014-10-03 06:47:39

回答

0

我所做的只是設置了一個外部文件來加載,當打開對話框的形式,似乎適用於我。不知道它是否是最佳設置。