function generate_num_select_div(num_limit,card_id)
{
  var editing_card_id = document.getElementById("editing_card_id");
  if(editing_card_id.value != "")
  {
    //编辑状态中
    return;
  }
  editing_card_id.value = card_id;
  var card = document.getElementById(card_id);
  card.style.borderColor = "#369";
  var tmpstr = "<table width='200' style=\"background-color:#ffffff;border:#369 1px solid; filter:alpha(opacity=90); text-align:center;\">"
    + "<tr><td align='right' colspan='4'><a onclick=\"clear_div('"+card_id+"');\">[X]</a></td></tr>";
  
  switch(num_limit)
  {
    case 6:
      tmpstr += "<tr height=\"50\">"
        + "  <td width=\"50\" ><input type=\"button\" value=\"0\" class=\"unused_card\" /></td>"
        + "  <td width=\"50\" ><input type=\"button\" onclick=\"set_selected_num('"+card_id+"',this.value);\" value=\"1\" class=\"select_card\"/></td>"
        + "  <td width=\"50\"><input type=\"button\" onclick=\"set_selected_num('"+card_id+"',this.value);\" value=\"2\" class=\"select_card\"/></td>"
        + "  <td width=\"50\"><input type=\"button\" onclick=\"set_selected_num('"+card_id+"',this.value);\" value=\"3\" class=\"select_card\"/></td>"
        + "</tr>"
        + "<tr height=\"50\">"
        + "  <td><input type=\"button\" onclick=\"set_selected_num('"+card_id+"',this.value);\" value=\"4\" class=\"select_card\"/></td>"
        + "  <td><input type=\"button\" onclick=\"set_selected_num('"+card_id+"',this.value);\" value=\"5\" class=\"select_card\"/></td>" 
        + "  <td><input type=\"button\" onclick=\"set_selected_num('"+card_id+"',this.value);\" value=\"6\" class=\"select_card\"/></td>"
        + "  <td><input type=\"button\" value=\"7\" class=\"unused_card\" /></td>"
        + "</tr>"
        + "<tr height=\"50\">"
        + "  <td><input type=\"button\" value=\"8\" class=\"unused_card\" /></td>"
        + "  <td><input type=\"button\" value=\"9\" class=\"unused_card\" /></td>"
        + "  <td><input type=\"button\" value=\"10\" class=\"unused_card\" /></td>"
        + "  <td><input type=\"button\" value=\"11\" class=\"unused_card\" /></td>"
        + "</tr>";
      break;
    case 8:
      tmpstr += "<tr height=\"50\">"
        + "  <td width=\"50\" ><input type=\"button\" value=\"0\" class=\"unused_card\" /></td>"
        + "  <td width=\"50\" ><input type=\"button\" onclick=\"set_selected_num('"+card_id+"',this.value);\" value=\"1\" class=\"select_card\"/></td>"
        + "  <td width=\"50\"><input type=\"button\" onclick=\"set_selected_num('"+card_id+"',this.value);\" value=\"2\" class=\"select_card\"/></td>"
        + "  <td width=\"50\"><input type=\"button\" onclick=\"set_selected_num('"+card_id+"',this.value);\" value=\"3\" class=\"select_card\"/></td>"
        + "</tr>"
        + "<tr height=\"50\">"
        + "  <td><input type=\"button\" onclick=\"set_selected_num('"+card_id+"',this.value);\" value=\"4\" class=\"select_card\"/></td>"
        + "  <td><input type=\"button\" onclick=\"set_selected_num('"+card_id+"',this.value);\" value=\"5\" class=\"select_card\"/></td>" 
        + "  <td><input type=\"button\" onclick=\"set_selected_num('"+card_id+"',this.value);\" value=\"6\" class=\"select_card\"/></td>"
        + "  <td><input type=\"button\" onclick=\"set_selected_num('"+card_id+"',this.value);\" value=\"7\" class=\"select_card\"/></td></tr>"
        + "<tr height=\"50\">"
        + "  <td><input type=\"button\" onclick=\"set_selected_num('"+card_id+"',this.value);\" value=\"8\" class=\"select_card\"/></td>"
        + "  <td><input type=\"button\" value=\"9\" class=\"unused_card\" /></td>"
        + "  <td><input type=\"button\" value=\"10\" class=\"unused_card\" /></td>"
        + "  <td><input type=\"button\" value=\"11\" class=\"unused_card\" /></td>"
        + "</tr>";
      break;
    case 10:
      tmpstr += "<tr height=\"50\">"
        + "  <td width=\"50\" ><input type=\"button\" value=\"0\" class=\"unused_card\" /></td>"
        + "  <td width=\"50\" ><input type=\"button\" onclick=\"set_selected_num('"+card_id+"',this.value);\" value=\"1\" class=\"select_card\"/></td>"
        + "  <td width=\"50\"><input type=\"button\" onclick=\"set_selected_num('"+card_id+"',this.value);\" value=\"2\" class=\"select_card\"/></td>"
        + "  <td width=\"50\"><input type=\"button\" onclick=\"set_selected_num('"+card_id+"',this.value);\" value=\"3\" class=\"select_card\"/></td>"
        + "</tr>"
        + "<tr height=\"50\">"
        + "  <td><input type=\"button\" onclick=\"set_selected_num('"+card_id+"',this.value);\" value=\"4\" class=\"select_card\"/></td>"
        + "  <td><input type=\"button\" onclick=\"set_selected_num('"+card_id+"',this.value);\" value=\"5\" class=\"select_card\"/></td>" 
        + "  <td><input type=\"button\" onclick=\"set_selected_num('"+card_id+"',this.value);\" value=\"6\" class=\"select_card\"/></td>"
        + "  <td><input type=\"button\" onclick=\"set_selected_num('"+card_id+"',this.value);\" value=\"7\" class=\"select_card\"/></td>"
        + "</tr>"
        + "<tr height=\"50\">"
        + "  <td><input type=\"button\" onclick=\"set_selected_num('"+card_id+"',this.value);\" value=\"8\" class=\"select_card\"/></td>"
        + "  <td><input type=\"button\" onclick=\"set_selected_num('"+card_id+"',this.value);\" value=\"9\" class=\"select_card\"/></td>"
        + "  <td><input type=\"button\" onclick=\"set_selected_num('"+card_id+"',this.value);\" value=\"10\" class=\"select_card\"/></td>"
        + "  <td><input type=\"button\" value=\"11\" class=\"unused_card\" /></td>"
        + "</tr>";
      break;
    case 12:
      tmpstr += "<tr height=\"50\">"
        + "  <td width=\"50\" ><input type=\"button\" onclick=\"set_selected_num('"+card_id+"',this.value);\" value=\"0\" class=\"select_card\"/></td>"
        + "  <td width=\"50\" ><input type=\"button\" onclick=\"set_selected_num('"+card_id+"',this.value);\" value=\"1\" class=\"select_card\"/></td>"
        + "  <td width=\"50\"><input type=\"button\" onclick=\"set_selected_num('"+card_id+"',this.value);\" value=\"2\" class=\"select_card\"/></td>"
        + "  <td width=\"50\"><input type=\"button\" onclick=\"set_selected_num('"+card_id+"',this.value);\" value=\"3\" class=\"select_card\"/></td>"
        + "</tr>"
        + "<tr height=\"50\">"
        + "  <td><input type=\"button\" onclick=\"set_selected_num('"+card_id+"',this.value);\" value=\"4\" class=\"select_card\"/></td>"
        + "  <td><input type=\"button\" onclick=\"set_selected_num('"+card_id+"',this.value);\" value=\"5\" class=\"select_card\"/></td>" 
        + "  <td><input type=\"button\" onclick=\"set_selected_num('"+card_id+"',this.value);\" value=\"6\" class=\"select_card\"/></td>"
        + "  <td><input type=\"button\" onclick=\"set_selected_num('"+card_id+"',this.value);\" value=\"7\" class=\"select_card\"/></td>"
        + "</tr>"
        + "<tr height=\"50\">"
        + "  <td><input type=\"button\" onclick=\"set_selected_num('"+card_id+"',this.value);\" value=\"8\" class=\"select_card\"/></td>"
        + "  <td><input type=\"button\" onclick=\"set_selected_num('"+card_id+"',this.value);\" value=\"9\" class=\"select_card\"/></td>"
        + "  <td><input type=\"button\" onclick=\"set_selected_num('"+card_id+"',this.value);\" value=\"10\" class=\"select_card\"/></td>"
        + "  <td><input type=\"button\" onclick=\"set_selected_num('"+card_id+"',this.value);\" value=\"11\" class=\"select_card\" /></td>"
        + "</tr>";
      break;
  }
  tmpstr += "<tr><td colspan='4'><input type=\"button\" onclick=\"set_selected_num('"+card_id+"','');\" value=\"Clear\" class=\"clear_button\" /></td></tr>" 
  + "</table>";
  num_select.innerHTML = tmpstr;
  num_select.style.display = "block";
}

function clear_div(card_id)
{
  num_select.innerHTML = "";
	num_select.style.display = "none";
  var editing_card_id = document.getElementById("editing_card_id");
  editing_card_id.value = "";
  var card = document.getElementById(card_id);
  card.style.borderColor = "#222";
}

function set_selected_num(card_id,num)
{
  var card = document.getElementById(card_id);
  var hid = document.getElementById(card_id+"_value");
  card.style.color = "#369";
  card.value = "" + num;
  hid.value = "" + num;
  clear_div(card_id);

  //set_commit_button();
}

function check_blank()
{
  var cards = document.getElementsByTagName("input");
  for(i=0;i<cards.length;i++)
  {
    if(cards[i].type == "button" && cards[i].value == "")
    {
      alert("还留有未被猜测的卡片。");
      return false;
    }
  }
  return true;
}


//could_not_used_for_firefox
function set_commit_button()
{
  var cmd = document.getElementById("commit");
  if(has_blank())
  {
    cmd.style.display = "none";  
  }
  else
  {
    cmd.style.display = "inline"; 
  }
}

function has_blank()
{
  var cards = document.getElementsByTagName("input");
  for(i=0;i<cards.length;i++)
  {
    if(cards[i].type == "button" && cards[i].value == "")
    {
      return true;
    }
  }
  return false;
}