2012-08-06 18 views
0

我想返回c =,然後讓它寫入輸入字段並提交值。IE JavaScript參數和填充輸入字段

var x = window.external.menuArguments.location.href; // IE Get URL Code 
alert(x); 
// http://site.com/design/page.html?c=235783&p=irol-IRHome 

// this code below populates a html pop that is created on popup. 
    var parentwin = external.menuArguments; 
    var doc = parentwin.document; 
    var sel = doc.selection; 
    var rng = sel.createRange(); 
    var str = new String(rng.text); 
    var html = new String(rng.htmlText); 
    var ops = "width=650,height=410,status=0,toolbar=0,menubar=0,resizable=1"; 
    viewSourceWin = parentwin.open("about:blank","viewselectionscr",ops); 
    // open document for further output 
    viewSourceWin.document.open(); 
viewSourceWin.document.write("$(document).ready(function() {"); 
viewSourceWin.document.write("load = ?;"); 
viewSourceWin.document.write("$('#cmid').val(load);$('.go').click();"); 
viewSourceWin.document.write("});"); 
viewSourceWin.document.write("<input id='cmid'/><button class='go'>Go</button>")"); 
+0

我試圖讓c = 235783解析成235783,並將其傳入load = var。這是彈出窗口的一部分。 – Blynn 2012-08-06 19:29:49

回答

1

你想要location.search,如:

var query = window.location.search.substring(1); // use substring to remove the leading '?' 
var keyValues = query.split('&'); // split apart 
var params = {}; 
for (var kv in keyValues) { 
    var parts = kv.split('='); 
    params[ parts[0] ] = parts[1]; 
} 

var c = params['c']; 
//... do whatever you need 

當然有一個jQuery插件或三個,有些發燒友正則表達式,你也可以使用。