0

我在联系页面中有一个表格,三个链接假设主页中有一个,两个和三个,我想为每个链接链接到联系页面,但是要选择一个选项,要选择一个选项,要选择两个选项两个等等。

<select id="message_type" name="message_type" class="inputbox">
    <option value="one">Suggestion</option>
    <option value="two">Inquiry</option>
    <option value="three">Offer</option>
</select>

单击链接一时,联系页面应显示已选择的选项等。

我怎样才能做到这一点?


编辑

我在主页上有三个链接

<a href="contact.php" id="one">one</a>
<a href="contact.php" id="two">two</a>
<a href="contact.php" id="three">three</a>

现在我想显示联系页面,其中为链接一选择了一个选项,依此类推......


这是导致选择的代码

<?php 
function dropdown($active){
$dropdown=array(
                'option1'=>'Suggestion','option2'=>'Inquiry','option3'=>'Offers'
                );

foreach($dropdown as $key=>$val){
$array[]=JHtml::_('select.option',$val,$key);
}
$dropdown  = JHtml::_('select.genericlist',$array,'message_type','class="inputbox"','text','value',$active);
return $dropdown;
}
?>

并以形式

<form name="feedback" id="frmfeedback" action=""  method="post" >
<div>
<label for="msg">Message Type: </label><span class="input"><?php echo dropdown(isset($post['message_type'])?$post['message_type']:'');?> </span>
</div>
.......
4

2 回答 2

1

可以在主页的链接中放一个哈希:

<a href="contact.html#one">Make a Suggestion</a>

然后在联系页面上:

$(function(){
    var opts=['one','two','three'];
    var hash =location.hash;// use browser location object to get hash
    if(hash && hash !='#'){
      hash= hash.replace('#','');
      /* get index of hash from array*/
      var optIndex= $.inArray(hash,opts);
       /* if not in array value will be empty string, otherwise value of hash*/
      $('#message_type').val( optIndx !=-1 ? hash : '' );
    }
});

编辑:如果 ID 与链接上的值相同,如问题所示

可以将哈希附加到主页上的href:

$('#one,#two,#three').attr('href',function(idx, oldHref){
     return oldHref +'#' + this.id;
});

编辑:itemId在 url 的查询字符串中使用:

$(function(){
     var opts=['477','478','479']; /* not sure these are accurate*/
    var a = document.createElement('a');
    a.href = location.href;
    var ret = {},
        seg = a.search.replace(/^\?/, '').split('&'),
        len = seg.length,
        i = 0,
        s;
    for (; i < len; i++) {
        if (!seg[i]) {
            continue;
        }
        s = seg[i].split('=');
        ret[s[0]] = s[1];
    }
    var currVal=ret['itemId'];
    if( currVal !=undefined && $.inArray(currVal,opts)>-i){
        $('#message_type').val( currVal);
    }

})
于 2013-10-30T03:22:45.320 回答
0

对于不同的页面

var url= document.URL;
switch(url)
{
    case 'http://jsfiddle.net/bs8dp/':
        $('#message_type').val('one');
        break;

     case 'http://jsfiddle.net/bs66p/':
        $('#message_type').val('one');
        break;

     default:
           $('#message_type').val('two');



}

jsfiddle

或者

如果您在同一页面中有选项,那么

('#your_tab_one').click(function(){

   $('#message_type').val('one');

});

('#your_tab_two').click(function(){

   $('#message_type').val('two');

});

('#your_tab_three').click(function(){

   $('#message_type').val('three');

});
于 2013-10-30T03:02:21.817 回答