没有使用jquery获得文本框的全部价值

时间:2017-03-01 06:49:09

标签: javascript jquery ajax

我在jquery中使用.val()函数从文本框中发布值。当我发出警报时,我可以看到整个字符串。但是当放置文本框时,只有空间来临之前的数据。有人知道这个问题,请帮助 我在这里分享我的代码

$('#add_input').click(function(){
var item = $('input[id="itemname"]').val();
i++;
 $('#dynamic1').append('<tr id="row'+i+'">\n\
<><td> <input type="text" name="serial_id" id="serial" value='+i+' ></td>\n\
<td><input type="text" name="item1[]"  value='+item+'></td></tr>');

项目texbox中仅获取输入值的第一部分。

2 个答案:

答案 0 :(得分:2)

假设item中包含字符串hello

你有:

'... value='+item+'...'

连接后,它变为:

value=hello

这不是正确的HTML语法。 hello需要用引号括起来:

value="hello"

这意味着您需要将代码更改为:

'... value="'+item+'"...'
// --------^--------^----

在HTML5中,对于不包含特殊字符或空格的值,引号是可选的。但是,如果他们这样做,则需要引号来标识值的开始和结束位置。查看this了解详情。

答案 1 :(得分:1)

问题出在这里

$newnode->setAttribute("siteId", $row['siteID']);

在您的情况下,value='+item+' 用于表示字符串的开始位置和结束位置。 '用于表示HTML值的开始位置和结束位置。代码只是指定"动态地进入字符串,但它没有指定它是HTML值,因此解决方案是

item