2013-08-03 36 views
2

我有以下形式。我想要更改表單動作以在此表單中包含變量500pxuserid。有沒有辦法做到這一點?對於用戶體驗,我想阻止重新指導。目前,我在另一端獲得變量,然後爲它們重新路由一個新的url,但這需要重新指定。郵政表單行動到變量內部形式

 <form action="importphotos.php?view=500&mode=upload&page=1&u=&u2=&500pxuserid=" method="post"> 

    <div style="width:100%;height:45px;background-color:rgb(2,173,234);"> 
    <img style="width:30px;padding:10px;float:left;" src="https://photorankr.com/graphics/import_500pxicon.png" /> 
    <h3 style="font-weight:300;font-size:20px;text-align:left;padding-left:40px;margin-top:8px;color:white;float:left;">Login to 500px</h3> 

    </div> 

     <div style="width:90%;height:150px;border-bottom:1px solid rgba(255,255,255);float:left;margin-top:-5px;"> 


    <input style="outline:none;padding:8px;border-radius:3px;font-size:18px;width:263px;float:left;border:1px rgb(100,100,100);border-style:solid; margin:8px; margin-left:16px;" placeholder = "Enter your 500px id" type="text" name="500pxuserid" /> 
    <input type="password" style="outline:none;padding:8px;border-radius:3px;font-size:18px;width:263px;float:left;border:1px rgb(100,100,100);border-style:solid; margin:8px; margin-left:16px;" placeholder = "Enter your 500px password" type="text" name="500pxuserpassword" /> 

    <input class = "submitbox" type="submit"> 

    </div> 




    </form> 
    </div> 
+0

爲什麼不簡單地使用'method =「get」'? – AlliterativeAlice

+0

你可以從'post'改變爲'get',或者你可以使用javascript在keyup或表單上添加/更改url – Sean

+1

@Sean JavaScript的樣子是什麼? – user2600095

回答

1

使用javascript,你可以在表單提交(onsubmit)上更改表單動作。

<script type="text/javascript"> 
function get_action(form) { 
    var user = document.getElementById('userid').value; 
    form.action = "importphotos.php?view=500&mode=upload&page=1&u=&u2=&500pxuserid=" + user; 
} 
</script> 

<form action="" method="post" onsubmit="get_action(this);"> 
    ... 
    // add id=""userid" to input 
    <input ... type="text" name="500pxuserid" id="userid" /> 
</form> 
+0

這實際上不起作用。它重定向到importphotos.php?view = 500我還應該改變什麼? – user2600095

+0

我編輯了我的答案。我最初做了'action =「importphotos.php?view = 500 ...」',用'...'截斷,而不是複製/粘貼整個url。我已經改變了它,所以試試現在發佈的內容。 – Sean

+0

我試過了,結果相同。有任何想法嗎? – user2600095

0

三件事:

它應該是這樣的:

<form id="foo" onsubmit="foo();" ... 

和你輸入:

<input id="bar" ... 

而在JavaScript中添加以下功能:

function foo() 
{ 
    var form = document.getElementById('foo'), 
     bar = document.getElementById('bar'); 
    form.action = 'importphotos.php?view=500&mode=upload&page=1&u=&u2=&500pxuserid=' + bar.value; 
} 

另外,請記住,如果用戶的瀏覽器中啓用JavaScript這隻會工作。