多个下拉列表(select)不能取重复值判断-动态增加输入框-模仿CSDN结贴时分数判断-但无层提示-Ajax取值(全部源码)
来源:互联网 发布:淘宝网三星a9手机壳 编辑:程序博客网 时间:2024/05/22 10:43
- <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
- <html>
- <head>
- <title>动态增删表格行</title>
- <script language="JavaScript">
- var request = false;
- var rowIndex=0;
- var Strs="";
- var Values="";
- function getCustomerInfo() {
- var url = "/Ajax/lookupCustomer.jsp?";
- request.open("GET", url, true);
- request.onreadystatechange = updatePage;
- request.send(null);
- }
- function updatePage() {
- if (request.readyState == 4)
- {if (request.status == 200)
- {
- var res1=request.responseXML.getElementsByTagName("res")
- var subMenu1 = "----请选择题型----";
- for(var i = 0; i < res1.length; i++) {
- subMenu1subMenu1 = subMenu1+ "," + res1[i].firstChild.data + "";
- }
- Strs= subMenu1.split(",");
- var res2=request.responseXML.getElementsByTagName("val")
- var subMenu2= "-1";
- for(var j= 0; j < res2.length; j++) {
- subMenu2subMenu2 = subMenu2+ " , " + res2[j].firstChild.data + "";
- }
- Values = subMenu2.split(",");
- }
- else if (request.status == 404)
- { alert("Request URL does not exist");}
- else if (request.status == 403) {
- alert("Access denied.");
- }
- else
- alert("Error: status code is " + request.status);
- }
- }
- function AddOption(Values,Strs)
- {
- var i;
- var MyOption="";
- for (i=0;i<Values.length;i++)
- {
- MyOptionMyOption=MyOption+"<option value="+Values[i]+">"+Strs[i]+"</option>";
- }
- return MyOption;
- }
- function createXMLHttpRequest() {
- try {
- request = new XMLHttpRequest();
- } catch (trymicrosoft) {
- try {
- request = new ActiveXObject("Msxml2.XMLHTTP");
- } catch (othermicrosoft) {
- try {
- request = new ActiveXObject("Microsoft.XMLHTTP");
- } catch (failed) {
- request = false;
- }
- }
- }
- if (!request)
- alert("Error initializing XMLHttpRequest!");
- }
- function addLine(obj){
- var objobjSourceRow=obj.parentNode.parentNode;
- var objobjTable=obj.parentNode.parentNode.parentNode.parentNode;
- if(obj.value=='增加'){
- createXMLHttpRequest();
- getCustomerInfo();
- rowIndex++;
- var objRow=objTable.insertRow(rowIndex);
- var objCell;
- objCell=objRow.insertCell(0);
- objCell.innerHTML="<input name='row"+rowIndex+"' value = '第"+rowIndex+"题'>"//在表格单元中添加文本输入框
- objCell=objRow.insertCell(1);
- objCell.innerHTML="<select name='tixing' id='"+rowIndex+"'onChange='checkTixing(this)'>"+AddOption(Values,Strs)+"</select>";
- objCell=objRow.insertCell(2);
- objCell.innerHTML="<input name='"+rowIndex+"' value = ''>"
- objCell=objRow.insertCell(3);
- objCell.innerHTML="<input name='tb_score' value = '' id='point'>";
- objCell=objRow.insertCell(4);
- objCell.innerHTML=objSourceRow.cells[4].innerHTML.replace(/增加/,'删除');
- }
- else{
- objTable.lastChild.removeChild(objSourceRow);
- rowIndex--;
- }
- }
- function checkTixing(obj){
- var tixing=document.getElementsByName('tixing');
- for(var i = 0;i<tixing.length;i++)
- {
- if(obj!=tixing[i] && obj.value==tixing[i].value)
- {
- alert("题型重复了,请选择另一个!");
- return;
- }
- }
- }
- function checkPoint(){
- //var points = document.getElementById("point").innerHTML;
- var points=20;
- var txts = document.getElementsByName("tb_score");
- //alert("txts.length:"+txts.length);
- for(var i=0;i<txts.length;++i)
- {
- var score = new Number(txts[i].value);
- if (score<0)
- {
- alert("不能给负分");
- focusOnPoint(txts[i]);
- return false;
- }
- if (score==0)
- {
- alert("不能不给分");
- focusOnPoint(txts[i]);
- return false;
- }
- if (score >0)
- {
- points-=score;
- continue;
- }
- }//end for
- if(points!=0){
- alert("给分与总分不符,请重新分配!");
- if(txts.length>0)focusOnPoint(txts[0]);
- return false;
- }
- return confirm('你确定要提交吗?')
- }
- function focusOnPoint(tb){
- tb.style.backgroundColor="red";
- tb.onchange=function(){tb.style.backgroundColor="white";}
- tb.focus();
- }
- </script>
- </head>
- <body bgcolor="#ffffff" onLoad="createXMLHttpRequest();getCustomerInfo();">
- <table align="center">
- <tr align="center">
- <td width="100">
- 大题号
- </td>
- <td width="100">
- 题型
- </td>
- <td width="100">
- 小题量
- </td>
- <td width="100">
- 分值
- </td>
- <td width="100">
- </td>
- </tr>
- </table>
- <form name="form1" action="menujsp.jsp" method="post">
- <table border="0" align="center">
- <tr>
- <td width="100">
- </td>
- <td width="100">
- </td>
- <td width="100">
- </td>
- <td width="100">
- </td>
- <td width="100">
- <input name="add" type="button" id="add" value="增加" onclick="addLine(this)"/>
- </td>
- </tr>
- <tr>
- <td>
- </td>
- <td>
- </td>
- <td>
- </td>
- </tr>
- <tr>
- <td>
- 如果可用分分配完毕,请点击
- <a onclick="return checkPoint();" href="Google-Search.html">确认结贴</a>
- </td>
- <td><label>
- 问题点数
- </label> </td>
- <td><div id="point" style="background: yellow; border: solid 1px red"><p>20</p></div>
- </td>
- </tr>
- </table>
- </form>
- </body>
- </html>
数据页面
lookupCustomer.jsp
- 多个下拉列表(select)不能取重复值判断-动态增加输入框-模仿CSDN结贴时分数判断-但无层提示-Ajax取值(全部源码)
- html 下拉框Select取值
- 判断数组中包含重复数(大数中取重复)
- js判断多个select值是否重复
- 下拉列表框设置和取值
- 更改select标签实现无刷新动态取值
- Ajax 无刷新取数
- magento产品取某个产品下拉属性的全部列表值
- jquery判断多个input输入框不能输入相同的值
- jquery判断多个input输入框不能输入相同的值
- jquery判断多个input输入框不能输入相同的值
- Java判断一个数的取值范围和类型。
- select 下拉菜单取值问题
- JQuery判断DropDownList 取值
- 数组之判断取值
- c#文本框数字校验,不能输入重复值判断
- 下拉列表select中使用ajax的json数据交换格式动态改变div层里面的复选框checkbox值
- select下拉框value和option的取值顺序
- 为什么C++不叫++C?
- iTestWare开始连载《TestComplete Made Easy》读书笔记
- JAVA使用jxl写excel
- c# 接口的显示实现和隐式实现的区别
- 愚者与智者的N个差距
- 多个下拉列表(select)不能取重复值判断-动态增加输入框-模仿CSDN结贴时分数判断-但无层提示-Ajax取值(全部源码)
- 传说是百度的面试题
- ASP.NET 3.5的新特色 vs2008
- 商用数据挖掘的两个关键环节
- 萧何月下追韩信时候,韩信对项羽的这个评价是否属实
- 使用一个存储过程实现多条件查询
- Fix Your Site With the Right DOCTYPE!
- 山僧不识英雄主,何必晓晓问姓名
- PO BO VO DTO POJO DAO概念及其作用(附转换图)