jQuery在ajax回复后访问表单元素

时间:2012-12-08 14:53:15

标签: javascript jquery

我正在向服务器发送表单,当我收到它时,我需要访问它的元素

这是代码。

一些HTML

<here is the form>
<div style='border-style:solid' id='user_pic_n_1'></div>

和javascript

pic_type=($(this).attr('pic_type'));                    
pic_number=($(this).attr('pic_number'));

解释:pic_type得到&gt; user_pic和pic_number获取&gt; 1

因此表单为user_pic_form_n_1

$('#'+pic_type+'_form_n_'+pic_number).ajaxSubmit({
    success: function(responseimage)
    {
$('#'+pic_type+'_n_'+pic_number).html(responseimage);

现在当表单进入div时,我需要得到它的输入值。

请编写如何访问它的代码示例

在我的例子中,我试图像这样通过警报获取值,但可能我写错了

alert($(\"#'+pic_type+'_form_n_'+pic_number+' input[name=error]\").val());

元素名称是'错误'所以我试图从表单中获取它。

更新

这是我从AJAX获得的HTML表单

<form id='user_pic_form_n_1' name='user_pic_form_n_1'   action='/serv/pic_processor.php' method='POST'>
<input type='hidden' name='error' value='456'/>
</form>

因此,当它从服务器进入responseimage变量时,我将其放入Div中,然后我想访问此表单并提醒名为'error'的标记值

2 个答案:

答案 0 :(得分:1)

您可以将包含响应html的元素作为上下文与选择器一起传递。

selectorElem = '#'+pic_type+'_n_'+pic_number;
$(selectorElem).html(responseimage);
$('form[name=A] #B', $(selectorElem))

根据评论进行编辑

<强> Live demo

HTML

<form id='user_pic_form_n_1' name='user_pic_form_n_1'   action='/serv/pic_processor.php' method='POST'>
<input type='hidden' name='error' value='456'/>
</form>​

的Javascript

pic_type = 'user_pic';
pic_number= '1';
selectorElem = pic_type+'_form_n_'+pic_number;
selectorElem = 'form[name='+selectorElem +'] :hidden[name=error]';
alert($(selectorElem).val());

答案 1 :(得分:0)

完成此操作后:

$('#'+pic_type+'_n_'+pic_number).html(responseimage);

并且您正在寻找#b内部a类的val,其类似于:{/ p>

$('#'+pic_type+'_n_'+pic_number+ ' form.a #b').val()