2010-07-13 150 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

我所做的只是设置了一个外部文件来加载,当打开对话框的形式,似乎适用于我。不知道它是否是最佳设置。