2012-08-16 378 views
1

我無法執行所需的事件。使用jquery在選擇框中設置一個特定選項

<?php 
    include_once 'includes/db.php'; 
     $result = mysql_query('SELECT country,code FROM countries') or die(mysql_error()); 

     echo '<select id="CountryCode">'; 
     echo '<option value="Select">Select</option>'; 
     while ($row = mysql_fetch_array($result)) 
     { 
      echo '<option value=$row["country"]>'.$row['country'].'</option>'; 
     } 
     echo '<option value="Other">Other</option>'; 
     echo '</select>'; 
    ?> 
<input id="country" type="hidden" value="IN"/> 
<script> 
$(function() 
{ 
$('#CountryCode').val($('#country').val()); 
}); 
</script> 

一切工作正常。但所需的項目未在選擇框中

+0

你的具體問題是什麼?他們通常以'?'結尾;另外,我強烈建議您徹底閱讀[本頁](http://php.net/manual/en/language.types.string.php) - 特別注意有關部分直接在字符串中使用數組鍵。如果你檢查這個產生的HTML源代碼,我懷疑你會發現「一切工作正常」是不正確的。事實上,我認爲這實際上是你問題的根源。 – DaveRandom 2012-08-16 14:58:20

+0

它可能無助於回答你的問題,但你應該停止使用'mysql_ *'函數。他們正在被棄用。請使用[PDO](http://php.net/manual/en/book.pdo.php)(自PHP 5.1起支持)或[mysqli](http://php.net/manual/en/book)。 mysqli.php)(自PHP 4.1起支持)。如果你不確定使用哪一個,[閱讀本文](http://net.tutsplus.com/tutorials/php/pdo-vs-mysqli-which-should-you-use/)。 – Matt 2012-08-16 15:00:50

+0

我的html源代碼不包含由php腳本生成的選擇值 – 2lessons 2012-08-16 15:09:58

回答

1

您需要將該選項的屬性「selected」設置爲「selected」。試試這個(未經測試):

$("#CountryCode").val($('#country').val()).attr('selected','selected'); 
+0

哇。這很好。 – 2lessons 2012-08-16 15:22:10

0

echo選擇在while()循環應該是這樣的:上面

echo '<option value="'.$row["country"].'">'.$row['country'].'</option>'; 

你的字符串被印刷文字$row["country"],而不是它包含的價值。

相關問題