2012-01-24 101 views
1

我有一个脚本,允许用户选择图像并写入一些内容......他们从JQuery幻灯片查看器中选择图像。需要动态隐藏字段

现在,选择图像很简单..但我怎样才能将选定的图像与其他表单数据?目前每个图像是在一个LI元素

代码片段:

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js" type="text/javascript"></script> 
<script src="/js/jquery.easing.1.3.js" type="text/javascript"></script> 
<script src="/js/jquery.slideviewer.1.2.js" type="text/javascript"></script> 

UPDATE我现在已经添加了这个的建议之下,但仍无法正常工作:

<script type="text/javascript"> 
$("#wl_add").submit(function (event) { 

$(this).find("input[name='item_pic_url']") 
.val($("#mygalthree img").attr('src')); 

}); 
</script> 

<div id="mygalthree" class="svw"><ul> 
<?PHP 

foreach($html->find('img') as $e){ // from simple_html_dom 

$image = $e->src; 

echo '<li><img src="'.$image.'" width=300 alt="" /></li>'; 
echo '<input type="hidden" name="item_pic_url" value="'.$image.'" />'; 

?> 

</ul></div> 

隐藏字段在那里现在当前存储添加到UL的最后一张图片

有没有办法让一个隐藏的字段变成动态的,然后是陈根据选择的图像盖德 - 理想我需要的隐藏字段

+0

发布您的用于选择图像的JavaScript和jQuery代码。 –

回答

1
  1. 添加另一个隐藏字段,current_item_url或任何你想叫它。

  2. 添加一个submit听众的表单。

  3. submit监听器,所述当前图像的src复制到隐藏字段。

例如,是这样的:

$("#whatever-form").submit(function (event) { 

    $(this).find("input[name='current_item_url']") 
    .val($("#mygalthree img").attr('src')); 

}); 

或者,如果slideviewer触发一个事件或者提供一个回调,你可以挂接到,你可以在幻灯片的变化,如果你想更新的隐藏字段的值。

+0

改变了表单名称和输入名称来匹配,但这只是不工作......隐藏字段有value =“”开始或根本没有,例如,没有值属性书写...并且上述脚本在表单之前或之后执行?还是没关系 –

+0

更新的问题 –

+0

请参阅这里的例子,并根据需要进行调整:http://jsfiddle.net/vfu8e/。检查'current_item_url'元素,然后提交表单并再次检查。正如在这个例子中,我最初将'value =“”'放在隐藏的'input'中,但是不管你是否这样做,或者忽略了这个属性,它的值将默认为空字符串。如果将脚本放在$(document).ready()中,脚本不需要放在表单之前,否则它需要放在表单后面,以便当您尝试附加'submit'监听器。 – JMM

0

当点击事件发生在IMG SRC,更新的隐藏字段这样的:

$('item_pic_url').value('selected_image_identifier');