2012-04-06 6 views
0

Hier ist mein Code i für benutzerdefinierte Suche verwenden,benutzerdefiniert Google mit zwei Radio-Buttons suchen

<div id="cse-search-form" style="width: 100%;">Loading</div> 
<script src="http://www.google.com.pk/jsapi" type="text/javascript"></script> 
<script type="text/javascript"> 
google.load('search', '1', {language : 'en', style : google.loader.themes.V2_DEFAULT}); 
$('input[@name=sr]').change(function() { 
if ($("input[@name=sr]:checked").val() == 'kw')    
    var qval = "kw" 

else 
    var qval = "gw" 

}); 
google.setOnLoadCallback(function() { 
var customSearchOptions = {}; var customSearchControl = new google.search.CustomSearchControl(
    '009317721292264254327:ce_olwjr2z4', customSearchOptions); 
customSearchControl.setResultSetSize(google.search.Search.FILTERED_CSE_RESULTSET); 
var qval = $("input[@name=sr]:checked").val(); 
var options = new google.search.DrawOptions(); 
options.setAutoComplete(true); 
options.enableSearchboxOnly("http://www.alhudapk.com/audios/search.html", qval); 
customSearchControl.draw('cse-search-form', options); 
}, true); 
</script> 
<div style="margin-top: 10px;"> 
<input type="radio" name="sr" id="kw" value="kw" checked="checked" />Audio 
<input type="radio" name="sr" id="gw" value="gw"/>Web 
</div> 
<style type="text/css"> 
input.gsc-input, .gsc-input-box, .gsc-input-box-hover, .gsc-input-box-focus { 
border-color: #D9D9D9; 
} 
input.gsc-search-button, input.gsc-search-button:hover, input.gsc-search-button:focus { 
border-color: #2F5BB7; 
background-color: #357AE8; 
background-image: none; 
filter: none; 
} 
.gsc-search-box { 
margin-top: -5px !important; 
margin-bottom: -5px !important; 
} 

</style> 

ich also

ein einfaches Ergebnis nur zur Folge haben muß, wenn radio1

Suche aktiviert ist. html? kw = mysearchkeyword

wenn radio2 geprüft? gw = mysearchkeyword

Grund ist, dass für "kw" ich meine eigene persönliche Suche verwende und für Google Web-Suche brauche ich "gw" -Parameter durch die URL zu gehen bitte helfen

Mein Code funktioniert nicht nach Seite geladen wird, funktioniert es nur sobald aber keinen Wert ändern, nachdem laden der Seite ist

Antwort

1

Einige Fragen:

1) Syntaxfehler: input[@name=sr]input[name$=sr] sein muss:

2) Lokale Variable qvar hat keinen Sinn

3)options.enableSearchboxOnly muss auf jedem Optionsfeld ändern aufgerufen werden:

Versuchen Sie stattdessen:

 <script type="text/javascript"> 
      google.load('search', '1', {language : 'en', style : google.loader.themes.V2_DEFAULT}); 
      google.setOnLoadCallback(function() { 
       var customSearchOptions = {}; 

       var customSearchControl = new google.search.CustomSearchControl(
        '009317721292264254327:ce_olwjr2z4', customSearchOptions); 
       customSearchControl.setResultSetSize(google.search.Search.FILTERED_CSE_RESULTSET); 

       var options = new google.search.DrawOptions(); 
       options.enableSearchboxOnly("http://www.alhudapk.com/audios/search.html", 
              $("input[name$=sr]:checked").val()); 
       options.setAutoComplete(true); 
       customSearchControl.draw('cse-search-form', options); 

       $('input[name$=sr]').change(function() { 
        options.enableSearchboxOnly("http://www.alhudapk.com/audios/search.html", 
        $("input[name$=sr]:checked").val()); 
        customSearchControl.draw('cse-search-form', options); 
       }); 

      }, true); 
     </script> 
+0

Nops ..! es funktioniert immer noch nicht – Amanullah

+0

@Amanullah Überprüfen Sie diesen Test: http://jsfiddle.net/8A2r2/ –

+0

Vielen Dank aber ..! mein Problem ist immer noch da in url die Variable nicht ändert, was immer Radio-Taste i die Variable in url wählen gleich bleibt search.html? kw = mykeyword – Amanullah

Verwandte Themen