2017-01-02 42 views
0

我的工作情況是,我有4種類型的筆的獲取條件數據 1鑽石 2金 3-銅牌 4-銀想用ajax

我想,當有人選擇在金剛石筆底部輸入,他將鍵入數量,因此如果他選擇1-Diamond Pen,則金額應該相互變化,同樣,所有4種類型的筆的費率應該不同。

我的代碼是

ajax.php

<!DOCTYPE html> 
<html> 
<head> 
<script> 
function showUser(str) { 
    if (str=="") { 
    document.getElementById("txtHint").innerHTML=""; 
    return; 
    } 
    if (window.XMLHttpRequest) { 
    // code for IE7+, Firefox, Chrome, Opera, Safari 
    xmlhttp=new XMLHttpRequest(); 
    } else { // code for IE6, IE5 
    xmlhttp=new ActiveXObject("Microsoft.XMLHTTP"); 
    } 
    xmlhttp.onreadystatechange=function() { 
    if (this.readyState==4 && this.status==200) { 
     document.getElementById("txtHint").innerHTML=this.responseText; 
    } 
    } 
    xmlhttp.open("GET","getuser.php?q="+str,true); 
    xmlhttp.send(); 
} 
</script> 
</head> 
<body> 

<form> 
<!-- <input type="text" name="users" onchange="showUser(this.value)"> --> 
<select name="users" onchange="showUser(this.value)"> 
<option value="">Select a person:</option> 
<option value="1">Diamond</option> 
<option value="2">Gold</option> 
<option value="3">Bronze</option> 
<option value="4">Silver</option> 
</select> 
<!-- <input type="submit" name="users"> --> 

</form> 
<br> 
<div id="txtHint"><b>Person info will be listed here.</b></div> 

</body> 
</html> 

getuser.php

<!DOCTYPE html> 
<html> 
<head> 
<style> 
table { 
    width: 100%; 
    border-collapse: collapse; 
} 

table, td, th { 
    border: 1px solid black; 
    padding: 5px; 
} 

th {text-align: left;} 
</style> 
</head> 
<body> 

<?php 
$q = intval($_GET['q']); 

$con = mysqli_connect('localhost','root','','fm_all'); 
if (!$con) { 
    die('Could not connect: ' . mysqli_error($con)); 
} 

mysqli_select_db($con,"ajax_demo"); 
$sql="SELECT * FROM all_company WHERE id = '".$q."'"; 
$result = mysqli_query($con,$sql); 

echo "<table> 
<tr> 
<th>Firstname</th> 
<th>Lastname</th> 
<th>Age</th> 
<th>Hometown</th> 
<th>Job</th> 
</tr>"; 
while($row = mysqli_fetch_array($result)) { 
    echo "<tr>"; 
    echo "<td>" . $row['name'] . "</td>"; 
    echo "<td>" . $row['city'] . "</td>"; 
    echo "<td>" . $row['province'] . "</td>"; 
    echo "</tr>"; 
} 
echo "</table>"; 
mysqli_close($con); 
?> 
</body> 
</html> 

問題只投遞箱值是工作,我不知道如何連接輸入量盒子。請幫忙。

注意:此代碼是根據id工作時,我選擇降盒價值,所以它顯示根據ID,但我沒有附加數量。

+0

這是什麼問題?添加新的''? –

+0

現在下降框工作,我想加入一個輸入框與數量,但問題是我不知道如何加入它 –

+0

'「getuser.php?q =」+ str +「&quanity =」+ qty' –

回答

0

您可以通過以下方式實現的情況下這你不想上執行的onkeyup表格上的任何操作提交

呼叫showUser()輸入,並提供它的一些ID可量 通話showUser()電平變化上的選擇框,還提供了它的一些ID可以是筆

function showUser(){ 
    quantity = $("#quantity").val(); 
    selected_pen = $("#pen").val(); 
    if (quantity != null && selected_pen != null && typeof(quantity) !='undefined'){ 
     your ajax calling code 
    } 
} 

您可以撥打上面的函數平變化的選擇框和onkeyup在輸入文本框中。但是通過上面提到的方式,每當文本字段或選擇框發生更改時,都會調用ajax。