2014-12-13 51 views
0

嗨,有人能幫我解決我的問題。我如何得到選擇值不是選項值在PHP

我有一個HTML和PHP函數在這裏我想要的就是要呼應選擇值不是選項值

這裏是我的代碼 輸出繼電器:帕特里克或任何的名字時,我選擇和發送按鈕

<?php if(isset($_REQUEST['send'])){echo $_POST['test'];}?> 
<form method="post"> 
<select name="test"><option value="1">Patrick</option><option value="2">Maria</option><option value="3">Fe</option></select><input type="submit" name="send" value="submit"> 
</form> 
+0

喜可有一個人幫我把我的問題。 我有一個HTML和PHP函數在這裏我想要的就是要呼應選擇值不是選項值 這裏是我的代碼 輸出繼電器:帕特里克或任何的名字時,我選擇和發送按鈕 <? php if(isset($ _REQUEST ['send'])){echo $ _POST ['test'];}?>

name =」send「value =」submit「>
2014-12-13 06:51:30

+0

簡單刪除' value =「」'在'

回答

1
<?php if(isset($_REQUEST['send'])){echo $_POST['test'];}?> 

改變要顯示

<form method="post"> 
    <select name="test"> 
     <option value="Patrick">Patrick</option> 
     <option value="Maria">Maria</option> 
     <option value="Fe">Fe</option> 
    </select> 
    <input type="submit" name="send" value="submit"> 
</form> 
您的選項的值

//在$行[「身份證」]更改爲$行[「名稱」]

<?php $q = mysql_query("select * from name");?> 
    while($row = mysql_fetch_assoc($q)){ 
    echo '<option value='.$row['name'].'>'.$row['name'].'</option>' ; 
} 

//確定要使用的ID在選項value.in您提交的代碼獲取表名檢查波紋管代碼

​​
+0

哈哈很容易。但我不認爲這是如果你將這個轉換爲PHP的答案。 <?php $ q = mysql_query(「select * from name」);?> while($ row = mysql_fetch_assoc($ q)){echo''}。我想顯示行的名稱不是行ID感謝 – 2014-12-13 07:01:13

+0

@PatrickTandocSarmiento現在檢查答案 – 2014-12-13 07:04:59

+0

不錯的嘗試先生,但正如我在我以前的聲明中說我爲什麼包括行['ID']的原因是,我會將其用於不同的功能。所以我認爲我的PHP查詢是正確的,但我的問題是,我的代碼獲得的價值是選項值而不是文本值 – 2014-12-13 07:17:03

0

選擇的值將是選擇的任何選項。如果我選擇瑪麗亞,你會看到2顯示。

0
<table cellpadding="3" cellspacing="3" align="center" width="50%"> 
     <tr> 
      <td> 
      <select name="user" id="user_id" onChange="selectuser()"> 
       <option value="0">Select User</option> 
       <option value="1">Patrick</option> 
       <option value="2">Maria</option> 
       <option value="3">Fe</option> 
      </select> 
      </td> 
     </tr> 
    </table> 

    <script language="javascript"> 
    function selectuser() 
    { 
     var name = $("#user_id option:selected").text(); 
     alert(name); 
    } 
+0

其實這裏是我的代碼:如果我點擊任何選項的按鈕,我選擇它將顯示名稱不是值<!DOCTYPE html>

name =「send」value =「submit」>
<?php if(isset ($ _REQUEST ['send'])){echo $ r流[ '名稱'];?!?}> – 2014-12-13 07:10:08

+0

<!DOCTYPE HTML> <形式方法= 「POST」> <選擇name = 「測試」> <?PHP如果(isset($ _ POST [ '發送'])) { \t回波$ _POST [ '測試']; } \t?> – 2014-12-13 07:16:56

0

指定選項的值這樣的「1_Patrick」

<?php if(isset($_REQUEST['send'])){ 
      $value = explode('_',$_POST['test']); 
      echo $value[1]; 
     } 

?> 

<form method="post"> 
<select name="test"><option value="1_Patrick">Patrick</option><option value="2_Maria">Maria</option><option value="3_Fe">Fe</option></select><input type="submit" name="send" value="submit"> 
</form> 
+0

您好感謝您的評論,我已經嘗試過了, – 2014-12-13 12:25:33

+0

歡迎你我改變一些編碼從你的jQuery它的工作原理謝謝... – 2014-12-20 07:02:54

+0

:)反正這是非常有幫助的 – 2014-12-22 14:25:36

0

當您發佈任何形式則包含在該領域的value attribute數據將得到公佈。

所以,你可以將數值數據更改爲需要的值,如值=「帕特里克」

正如你所說的,有目的的後面添加數字數據值,那麼我的建議是這個數字的數據添加到一些其他自定義屬性如data-customid="1"等和更改value="Patrick"

您可以在選項值中添加自定義屬性。

有關詳細信息,請參閱此link

0

純JS:

DEMO

document.addEventListener('DOMContentLoaded', function() { 

    document.querySelector('select').addEventListener('change', function() { 
     alert(this.options[this.selectedIndex].innerText); 
    }, false); 

}, false);