Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/365.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/79.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
Javascript getelementsbyname(在Ajax html响应中),当我有一个部分名称时。_Javascript_Jquery_Ajax_Html Parsing - Fatal编程技术网

Javascript getelementsbyname(在Ajax html响应中),当我有一个部分名称时。

Javascript getelementsbyname(在Ajax html响应中),当我有一个部分名称时。,javascript,jquery,ajax,html-parsing,Javascript,Jquery,Ajax,Html Parsing,我被困在jQuery世界的角落里,肯定需要一些帮助 简而言之,我使用jQuery(GET)进行Ajax调用,并获得一个XHTML页面作为响应。在响应中(包括、和标记等),有一个输入元素,我只知道其名称的一部分。我需要得到这个隐藏输入字段的值,它与响应一起出现 p、 我无法控制html响应的外观,因此无法重新格式化。 这些文件需要放在包含jQuery.js(当前最新版本)的文件夹中 这就是我到目前为止想到的 Page1.html(进行Ajax调用并获取page2.html作为响应) 运行此 $(

我被困在jQuery世界的角落里,肯定需要一些帮助

简而言之,我使用jQuery(GET)进行Ajax调用,并获得一个XHTML页面作为响应。在响应中(包括
标记等),有一个输入元素,我只知道其名称的一部分。我需要得到这个隐藏输入字段的值,它与响应一起出现

p、 我无法控制html响应的外观,因此无法重新格式化。 这些文件需要放在包含jQuery.js(当前最新版本)的文件夹中

这就是我到目前为止想到的

Page1.html(进行Ajax调用并获取page2.html作为响应)


运行此
$(文档).ready(函数(){
$('input')。单击(函数(){
$.ajax({
键入:“获取”,
url:'page2.html',
数据类型:“html”,
成功:功能(数据){
警报($(数据).filter('input[name*=“test”]').value);
},
错误:函数(){
警报(“抱歉,找不到请求的属性。”);
}
});
});
});
返回jQuery对象,而不是DOM元素,因此必须使用该方法而不是
属性:

alert($(data).filter('input[name*="test"]').val());

我刚刚复制了您的设置,发现了两个问题,您需要解决才能使其正常工作

两者都在这条线上:

alert($(data).filter('input[name*="test"]').value);
首先,它应该结束
.val()

其次,您需要一个子集的值。选择第一个匹配项并返回该匹配项的值:

alert($(data).first('input[name*="test"]').val())

为什么这毫无意义?此外,为什么在将标记添加到文档后执行完全相同的操作更有意义呢?您是对的,我考虑了多个匹配结果,但我的代码将呈现相同的问题。现在编辑…再次测试,我的设置将返回结果。他的设置返回“未定义”。开放的建议,为什么,但上述工作很好。感谢你的快速回答,你能给我一个“良好的做法”这样做的方式的例子吗?当做Amir@Chris,这是因为提问者的HTML标记无效。我刚刚意识到你的标记无效:
哦,是的,这是我的错,但这不是问题所在!测试@阿米尔,奇怪,这对我来说很好用。
alert($(data).filter('input[name*="test"]').value);
alert($(data).first('input[name*="test"]').val())