gpt4 book ai didi

对动态创建的文本框进行 javascript 验证

转载 作者:塔克拉玛干 更新时间:2023-11-02 21:07:33 25 4
gpt4 key购买 nike

在表单中,通过单击添加按钮动态创建文本框,以便在新行中创建文本框。现在我的问题是验证动态创建的文本框,以便显示消息(如果有)单击提交按钮提交表单时,文本框留空。请帮助我。

编辑

  <html>
<head>

<SCRIPT language="javascript">
function addRow(tableID) {

var table = document.getElementById(tableID);

var rowCount = table.rows.length;
var row = table.insertRow(rowCount);

var cell1 = row.insertCell(0);
var element1 = document.createElement("input");
element1.type = "text";
cell1.appendChild(element1);
}

</SCRIPT>
</head>


<body>


<form onSubmit="return validateFormOnSubmit(this)">
<INPUT type="button" value="Add More Symptom " onClick="addRow('dataTable')" />


<TABLE id="dataTable" >
<TR>

<TD >
<INPUT type="text" name="symp[]" />
</TD>
</TR>
</TABLE>
<input type="submit" value="Submit" name="ADD_SUBMIT">
</form>


</body>
</html>

以上是在新行中添加新文本框的脚本。现在我要求单击提交按钮时,应验证每个文本框是否在客户端为空。文本框中输入的值不应消失,空文本框的数量应相同。

最佳答案

在表单的提交事件中,您只需收集您在表单中找到的所有输入文本框并将它们传递给验证函数。

将此代码放入 <head>页面的一部分

//This function here is only a cross-browser events stopper
stopEvent = function(ffevent)
{
var current_window = window;

if(current_window.event) //window.event is IE, ffevent is FF
{
//IE
current_window.event.cancelBubble = true; //this stops event propagation
current_window.event.returnValue = false; //this prevents default (usually is what we want)
}
else
{
//Firefox
ffevent.stopPropagation();
ffevent.preventDefault();
};
}

function validateAllInputBoxes(ffevent)
{
var inputs = document.getElementsByTagName('input');
for(var i = 0; i < inputs.length; ++i)
if(inputs[i].type === 'text')
//@Satish, maybe below you wrote by mistake if(inputs[i].value = '') thus all input elements values get cleared out.
if(inputs[i].value === '')
{
alert("form could not be sent one input text field is empty");
stopEvent(ffevent);
}
}

并且在<form>标记放置以下代码:

onsubmit="validateAllInputBoxes(event);"

关于对动态创建的文本框进行 javascript 验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3087354/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com