2012-11-15 29 views
0

SI具有下面的脚本工作:jQuery的变化功能不会在功能

function getInputString() { 
//dropdown value 
$('#dropdown').bind('change', function(event) { 
    var dValues = $('#dropdown:selected').val(); 

    //the standard form should hide if nothing is choosen 
    if("" != dValues) { 
     $('.shop_search').hide(); 
    }else { 
     $('.shop_search').show(); 
    } 
    //if first 2 letters are not MZ cValue changes, else it is the selected one  
    if (dValues.substr(0, 2) != "MZ") { 
     var cValues = "simson " + dValues; 
    }else { 
     var cValues = dValues; 
    } 
}); 
return cValues ; 
} 

function getSearchString() {         
//searchform value 
$('#merkmalsuche').keyup(function() { 
    var sValues = $(this).val(); 
}).keyup(); 
return sValues; 
} 

function generateURL() { 
    var mString = getSearchString(); 
    var vString = getInputString(); 
    window.location = "http://www.akf-shop.de/tag/" + vString + " " + mString; 
} 

$('#merkmalsuche').submit(function() { generateURL(); }); 

有一个生成的选择的选项,设置第一个变种。在更改时,应该隐藏正常的搜索表单并显示镜像搜索表单。在键入时,输入的单词是第二个变量。

如果您点击提交,现在应链接到生成的URL。 但是,如果更改选择字段中的值,则什么也不会发生。

谢谢

回答

1

因为调用这两个函数而没有任何反应

var mString = getSearchString(); 
    var vString = getInputString(); 

只是要assing处理程序..

你也会有错误的页面上cValues没有的功能范围之外的定义。它将会是本地的事件处理程序..

0

尝试改变 var dValues = $('#dropdown:selected').val();var dValues = $('#dropdown option[selected=selected]').val();或只是

var dValues = $('#dropdown').val(); 
1

检查您所定义的变量范围,你定义你的VAR在函数内部,不能外达...