日期:2014-05-17  浏览次数:20411 次

得到的checkbox的value不知道从哪儿出来的/?
我从数据库里面获得了result,把roomname字段作为了checkbox的value,在javascript脚本的summitdata函数和mcustom.php中的得到的数据中间怎么都加了/?
1.
echo "<form id='roomlist' action ='/qtjd/mcustom.php' method='get'>";
echo "<table>";
while($row=mysql_fetch_array($result))
{
  echo "<tr>";
  echo "<td><input type='checkbox' name='selectrooms[]' value=" . $row['roomname'] . "/></td>";
  echo "<td align='center'>" . $row['roomname'] . "</td>";//此处没有/
  echo "</tr>";  

echo "<tr><td ><input type='button' value='submit' onclick='submitdata()'/></td></tr>";
echo "</table>";
echo "</form>";
2.javascript部分
function checkchecked(checkboxs)
{

  for(var i=0;i<checkboxs.length;i++)
  {
  if(checkboxs[i].checked)  
  {
  alert(checkboxs[i].value);//此处得到的checkboxs[i].value的值101/,已经被加了/
  return true;
  }
   
  }
  alert("Please select the room.");
  return false;
}
function submitdata()
{
  var checkboxs=document.getElementsByName("selectrooms[]");
  var checked=checkchecked(checkboxs);
  if(checked)
  {
  var form=document.getElementById("roomlist");
  form.submit();
  }
  else
  {
  return false;
  }
}
3.mcustom.php中得到的
  if(isset($_GET["selectrooms"]))
  {
  $selectrooms=$_GET["selectrooms"];
  foreach($selectrooms as $item)
  {
  echo "<tr>";
  echo "<td>" .$item . "</td>";//此处也有/
  echo "</tr>";
  }
  }

------解决方案--------------------
value=" . $row['roomname'] . "/></td>";得出的结果大概是 value=roomnamevalue/>
value和/>之间没有空格,所以浏览器认为value=roomnamevalue/ 。建议在任何属性都加上""包含属性值