如何使用Jquery移动选择菜单更改页面?

时间:2012-07-09 08:05:44

标签: jquery jquery-mobile select-menu

我正在开发一个应用程序,我在其中使用选择菜单。由于我是新手,我不知道在选择菜单时如何更改页面。我试过onclick events&选择菜单上的onchange事件但它们不起作用。我正在使用的代码是

代码:

的index.html

<section id="previewPage" data-role="page">
  <div data-role="content" id="previewId" class="previewScreen">


        <select name="select-choice-0" id="select-choice-1" data-native-menu="false">
            <option value="email">Share via Email</option>
            <option value="bbm">Share via BBM</option>
            <option value="sms">Share via SMS</option>
            <option value="facebook">Share via Facebook</option>
            <option value="twitter">Share via Twitter</option>
            <option value="google">Share via Google</option>
        </select>                       
        </div>

    </section>

根据上面的代码当我点击通过电子邮件分享或通过BBM分享时,它需要将页面导航到那些特定的html页面。例如当我点击通过BBM选项分享时我的项目需要将页面从index.html更改为BBM.html页面。

Canany一个请帮我这个...... 提前谢谢......

4 个答案:

答案 0 :(得分:2)

一个选项是将data-属性添加到选项标记:

<option value="bbm" data-location='www.example.com/bbm.html'>Share via BBM</option>

$('#select-choice-1').change(function() {
   window.location = $(this).data('location')  
})

data()

答案 1 :(得分:2)

jQuery Mobile公开了$.mobile.changePage方法。你可以解决这个问题。

如果需要导航的页面与&#34; index.html&#34;在同一目录中,您可以使用下面的js。

$(function(){

    $('select').change(function() {
        var nextpage = $(this).children('option:selected').attr('value');
        $.mobile.changePage( nextpage + '.html' );
    });

});​

DEMO:jsfiddle(多页样本)

答案 2 :(得分:0)

我正在使用以下代码来更改页面网址,使用选择框作为菜单。

$('#menu-select').change(function() {
   window.location = $(this).data('location')  
})

javascript:

 <select name='select-choice-1' id="menu-select">
    <option value="">Menú:</option>
    <option value="index.php">Noticias</option>
    <option value="index.php#tramites" data-location='index.php#tramites'>Trámites</option>
    <option value="index.php#twitter" data-location='index.php#twitter'>Twitter</option>
    <option value="virgen_del_valle.php">Parque Virgen del Valle</option>
    </select>

我有三页:

  • index.php(包含到pages或data-role =“page”with和id)
  • news.php
  • event.php

问题在于,当我选择Home选项,然后选择More Information并尝试转到Event时,它没有加载页面。

我认为此代码必须具有内部页面和外部URL的条件。

希望你能

答案 3 :(得分:0)

var a = document.createElement('a');
a.href='http://google.com/';
a.rel = 'external';
a.target = '_top';
document.body.appendChild(a);
a.click();

Jsfiddle