在按钮点击事件中,我在网页中添加了一些文本框,所以现在我想获取用户输入的文本框的值。我怎么能这样做?
$(document).ready(function()
{
var max_fields = 100;
var wrapper = $("#test1");
var add_button = $("#eassy");
var x = 1;
$(add_button).click(function(e){
e.preventDefault();
if(x < max_fields)
{
//max input box allowed
x++;
$(wrapper).append('<div><input type="text" name="pay"></div>');
}
});
});
我用它来动态创建文本框。请给我一些指导!
答案 0 :(得分:0)
您需要为每个文本框指定唯一名称:
这样做:
if(x < max_fields){ //max input box allowed
$(wrapper).append('<div><input type="text" name="pay[]"></div>');
x++;
}
您将获得数组中所有文本框的值。您可以通过以下方式查看每个值:
print_r($_REQUEST['pay']);
这将是一个数组,可以通过以下方式检索:
foreach($_REQUEST['pay'] as $item){
echo $item;
}
答案 1 :(得分:0)
由于许多文本框具有相同的名称,因此您应该使用名称数组
append()
调用应该是这样的:
$(wrapper).append('<div><input type="text" name="pay[]"></div>');
然后在后端,您可以这样做:
for($i = 0; $i < $max_fields; $i++)
if(isset($_POST['pay'][$i]))
$value = $_POST['pay'][$i]; // Use this value of the textbox
else
break;
修改强>
在PHP中获取max_fields
:
HTML:
<input type="hidden" id="inpMaxFields" name="inpMaxFields" value="">
JQuery的:
$('#inpMaxFields').val(max_fields);
PHP:
$max_fields = $_POST['inpMaxFields'];