这是我问here的问题的后续问题。除了在下面的示例中设置名为 misc_value 的第二个输入字段的值之外,所有内容都按预期工作。
希望第一个输入字段 group1 为空,以便显示占位符并使第二个输入字段包含默认值0.
如果我检查克隆字段集的元素,我确实看到了值=" 0"显示为第二个输入字段但实际上没有显示任何内容,并且在表单提交时不返回该值。
我在示例中的$('input[name="misc_value"]').val("0");
行尝试过多种变体,但结果始终相同。
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Testing Input Value</title>
<script type="text/javascript" src="//code.jquery.com/jquery-3.2.1.slim.min.js"></script>
<script type="text/javascript">
function AddGroup1() {
newFS = $('#fsgroup1').clone(true).removeProp("id");
newFS.find('a').replaceWith('<a href="#" onclick="deleteID(this);return false;" title="Delete This Entry">Delete</a>');
newFS.find("input:text").val("").end()
$('input[name="misc_value"]').val("0");
$("#moregroup1").append(newFS);
} // end of the AddGroup1 function
function deleteID(button) {
var fieldset = $(button).parent();
$(fieldset).remove();
} // end of the deleteID function
</script>
</head>
<body>
<h1>Testing Input Value</h1>
<form method="post" action="WeedsTest.html">
<fieldset id="fsgroup1">
<label for="group1">Group 1</label>
<input placeholder="Enter misc description" type="text" name="group1[]" value="" size="255" maxlength="255" />
<label for="misc_value">$ Amount</label>
<input type="text" name="misc_value[]" size="15" maxlength="15" value="0" />
<a href="#" onclick="AddGroup1();return false;" title="Add Additional Entry">Add</a>
</fieldset>
<div id="moregroup1"></div>
</form>
</body>
</html>
&#13;
答案 0 :(得分:1)
你的问题是:
var
内newFS
旁边的AddGroup1()
newFS
作为查找misc_value
的父元素misc_value
和group1
的名称分别为misc_value[]
和group1[]
,因此find
无法正常使用。请参阅下面的工作示例:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Testing Input Value</title>
<script type="text/javascript" src="//code.jquery.com/jquery-3.2.1.slim.min.js"></script>
<script type="text/javascript">
function AddGroup1() {
var newFS = $('#fsgroup1').clone(true).removeProp("id");
newFS.find('a').replaceWith('<a href="#" onclick="deleteID(this);return false;" title="Delete This Entry">Delete</a>');
newFS.find("input:text").val("").end()
newFS.find('input[name="misc_value"]').val("0");
$("#moregroup1").append(newFS);
} // end of the AddGroup1 function
function deleteID(button) {
var fieldset = $(button).parent();
$(fieldset).remove();
} // end of the deleteID function
</script>
</head>
<body>
<h1>Testing Input Value</h1>
<form method="post" action="WeedsTest.html">
<fieldset id="fsgroup1">
<label for="group1">Group 1</label>
<input placeholder="Enter misc description" type="text" name="group1" value="" size="255" maxlength="255" />
<label for="misc_value">$ Amount</label>
<input type="text" name="misc_value" size="15" maxlength="15" value="0" />
<a href="#" onclick="AddGroup1();return false;" title="Add Additional Entry">Add</a>
</fieldset>
<div id="moregroup1"></div>
</form>
</body>
</html>
&#13;