在空白后截断的Javascript变量
Javascript variable cut off after whitespace
我有一个PHP页面,我正在使用JavaScript根据MySQL结果更新下拉列表。我的问题是,当我通过JavaScript变量传递客户名称时,它会在第一个空白处截断。例如:"家得宝"会显示为"家",或者"家居商店"显示为"The"。为了执行正确的查询,我希望传递整个字符串。
这是我表格中的相关代码:
function getXMLHTTP() { //function to return the xml http object
var xmlhttp=false;
try{
xmlhttp=new XMLHttpRequest();
}
catch(e) {
try{
xmlhttp= new ActiveXObject("Microsoft.XMLHTTP");
}
catch(e){
try{
xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
}
catch(e1){
xmlhttp=false;
}
}
}
return xmlhttp;
}
function getCustCont(cID)
{
var strURL="Includes/cdd.php?custid="+cID;
var req = getXMLHTTP();
if (req)
{
req.onreadystatechange = function()
{
if (req.readyState == 4)
{
// only if "OK"
if (req.status == 200)
{
document.getElementById('Contdiv').innerHTML=req.responseText;
} else {
alert("There was a problem while using XMLHTTP:'n" + req.statusText);
}
}
}
req.open("GET", strURL, true);
req.send(null);
}
//VARIABLES DEFINED AND START OF FORM
<td width="60%">
<select name="Customer" onchange="getCustCont(this.value)">
<option value="SAC">Select Customer</option>
<?php
$i=0;
while ($i < $num) {
$Name=mysql_result($result,$i,"Name");
echo "<option value=$Name>$Name</option>";
$i++;
}
?>
</select>
</td>
cdd.php文件包括以下内容:
<?
$Cust_ID = $_GET['custid'];
include('../Includes/TrackingDB.php');
mysql_connect($dbhost,$dbuser,$dbpass) or die('Error connecting to mysql');
mysql_select_db($dbdb) or die('Error connecting to database');
$query="SELECT t1.ContName FROM Cust_Contacts t1 INNER JOIN Customer_Listing t2 ON t1.Cust_ID = t1.Cust_ID WHERE t2.Name = '$Cust_ID'";
$result=mysql_query($query);
mysql_close();
echo var_dump($Cust_ID); //I added this solely for the purposes of trouble shooting this issue. This is where I am seeing the truncated string.
?>
<select name="Cust_Buyer" onchange="getCity(<?=$country?>,this.value)">
<? while($row=mysql_fetch_array($result)) { ?>
<option value="<?=$row['ContName']?>"><?=$row['ContName']?></option>
<? } ?>
</select>
同样,在cdd.php文件中,字符串在空白处截断。
编码cID
var strURL="Includes/cdd.php?custid="+encodeURIComponent(cID);
并用引号将值括起来:
echo "<option value='$Name'>$Name</option>";
相关文章:
- 将函数的上下文应用于javascript变量
- 如何通过ajax刷新JSF填充的javascript变量
- Javascript变量赋值|
- 限制javascript变量的最小/最大整数
- 来自文本输入null的html javascript变量
- 访问jsrender模板中的全局javascript变量并更新它
- 从数据库中获取数据并插入JavaScript变量
- 如何将javascript变量传递到Meteor Spacebars模板中
- 将JavaScript变量保存到Rails模型
- 在if语句下的html中使用javascript变量
- Javascript变量分配-按类别
- 操作javascript变量[HTML]以只显示文本
- 无法比较javascript变量
- 如何将smarty变量与javascript变量进行比较
- 如何使用PHP将javascript变量添加到mysql数据库中
- Javascript 变量使用 jquery 查找变量
- 重新加载页面时Javascript变量发生变化
- 在asp classic中使用javascript变量
- 全局Javascript变量变为null
- 如何向服务器端提交javascript变量