2015-06-18 28 views
1

我有一點javascript可以找到一個現有的id並用表單替換它。Javascript - 將變量添加到表單中提交

在該表單中,我希望能夠將JavaScript變量添加到提交網址。我不確定這是可能的,或者我只是錯誤地實施它。

$(document).ready(function() { 
    $("#FB_cs_redirectTextBox") 
    .replaceWith('<form class="cf" action="http://test.com/s/search.html?profile=_default&collection=general + document.getElementById(' + item-select + ').value" method="get">' + 
       '<input type="search" placeholder="Search for stuff" name="search" class="searchbox-input" required="">' + 
      '<select name="item-select" id="item-select" required="">' + 
       '<option value="" selected="selected">Item type...</option>' + 
       '<option value="level">item 1</option>' + 
       '<option value="taste">item 2</option>' + 
       '<option value="location">item 3</option>' + 
       '<option value="month">item 4</option>' + 
       '</select>' + 
      '<button type="submit" class="btn btn--green searchbox-submit">' + 
        'Search for items' + 
       '</button>' + 
      '</form>'); 


}); 

所以這是我的問題我行認爲:

action="http://test.com/s/search.html?profile=_default&collection=general + document.getElementById(' + item-select + ').value" 

我也想知道,如果這是可能的,我怎麼也選擇的值添加到URL操作。我是否會通過將相同的ID應用於所有選項然後調用該ID名稱上的document.getElementById來執行此操作?

所有幫助非常感謝!

+0

可能重複:http://stackoverflow.com/questions/993834/adding- post-parameters-before-submit – Vikash

+0

「action」的期望網址之一是什麼?就像'http://test.com/s/search.html?profile = _default&collection = generallevel'? – Xufox

+0

哎呦錯過了一點,它應該是:http://test.com/s/search.html?profile=_default&collection=general&search=然後在這裏修改的變量 – hlh3406

回答

2

讓表單名稱,然後:

document.form_name.action = 'http://test.com/s/search.html?profile=_default&collection=general' + document.getElementById(' + item-select + ').value; 

確保您的DOM加載後做到這一點,否則將無法正常工作。

+0

名稱不是主要問題。你還改變了'document.getElementById'的字符串連接,對吧?這是真正的問題。 – Xufox

+0

這將我的問題排序 - 感謝您的幫助! – hlh3406

+0

不客氣!請標記爲已接受... – idoberko2

1

更換你

action="http://test.com/s/search.html?profile=_default&collection=general + document.getElementById(' + item-select + ').value" 

隨着

action="http://test.com/s/search.html?profile=_default&collection=general + document.getElementById(item-select).value" 

你需要把'和+僅當 '項,選擇' 是一個變量,但它不是,它的ID,所以刪除'和+標記。代碼工作

1

更改此

'<form class="cf" action="http://test.com/s/search.html?profile=_default&collection=general + document.getElementById(' + item-select + ').value" method="get">' 

這個

'<form class="cf" action="http://test.com/s/search.html?profile=_default&collection=general&search=' + document.getElementById('item-select').value + '" method="get">' 

那麼JavaScript語法是正確的一次。

這些都是預期網址action

http://test.com/s/search.html?profile=_default&collection=general&search=level
http://test.com/s/search.html?profile=_default&collection=general&search=taste
http://test.com/s/search.html?profile=_default&collection=general&search=location
http://test.com/s/search.html?profile=_default&collection=general&search=month

相關問題