Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/72.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用jquery成功后切换图标的可见性_Jquery_Element_Show_Hidden - Fatal编程技术网

使用jquery成功后切换图标的可见性

使用jquery成功后切换图标的可见性,jquery,element,show,hidden,Jquery,Element,Show,Hidden,奇怪的事。我有一些手工创建的表单,其中我在submit按钮附近插入了唯一的id span,如下所示: "<span id=\"successful_insert"+ obj.models[i].id +"\" style=\"display: none;\" class=\"glyphicon glyphicon-ok\"></span>" var form = $(this); var span = $(form).find('input[name="span_id

奇怪的事。我有一些手工创建的表单,其中我在submit按钮附近插入了唯一的id span,如下所示:

"<span id=\"successful_insert"+ obj.models[i].id +"\"  style=\"display: none;\" class=\"glyphicon glyphicon-ok\"></span>"
var form = $(this);
var span = $(form).find('input[name="span_id"]').val();
span = String(span);
其中
span
是一个变量,我得到如下结果:

"<span id=\"successful_insert"+ obj.models[i].id +"\"  style=\"display: none;\" class=\"glyphicon glyphicon-ok\"></span>"
var form = $(this);
var span = $(form).find('input[name="span_id"]').val();
span = String(span);

关键是glyphicon保持隐藏状态,函数不工作。有什么问题吗?

我想问题出在下面几行

var span = $(form).find('input[name="span_id"]').val();
您应该用单引号将
表单
括起来,如下所示

var span = $('form').find('input[name="span_id"]').val();

字符串(span)
的用途是什么?我想那可能是把它扔掉了
String(span)
正在创建一个字符串对象,而不是字符串文本,因此当您将它添加到
$(“#”+span)
中时,我认为它可能在jQuery选择器中获得了比您想要的更多的信息。尝试删除该行,看看会发生什么。

下面是选择器表达式的问题:

find('input[name=“span\u id”]”)
->您正在查找类型为
input
的元素,其名称属性为
'span\u id'
=>不存在此类元素。因此,您可以使用id选择器(
#successful_insert466
)或包含选择器(
[id=successful_insert466]
)来定位元素


示例:

对不起,我忘了提到form也是一个变量
var form=$(这个)如果我记录控制台日志
span
我会得到我需要的。好的。在调用
ajax
之前,您是否获得
span
的值@Chriz74In
ajax
successconsole记录span并查看您得到了什么@有趣的是我什么都没得到。。。这是范围问题吗?可能是。您可以创建一个完整代码的小提琴@Chriz74I按照你的建议做了,但没有任何改变我假设你的输入包含了span id的前缀“successful_insert”以及唯一的数字,对吗?等等,我在我的控制器中做了一些改变,现在只需要看一小段代码就很难告诉你了,但我猜是某个地方有身份证。
$(document).find('span[id=successful_insert466]').fadeIn("slow");

or  $(document).find('#successful_insert466').fadeIn("slow");