2016-02-18 106 views
0

我正在開發一個Web應用程序,並且我在jsp頁面中設計了一個表單。 我有一些文本字段和兩個提交按鈕「發送」和「搜索」。我希望我的表單在按下這些按鈕時執行兩個不同的操作。但是我點擊搜索按鈕的操作與點擊發送按鈕的操作相同,請幫助我在這。 下面是我的代碼的一部分。帶兩個提交按鈕的表單無法正常工作

<form name="Field_Details" action="ServletApp" method="get"> 
 
    <fieldset style="float: center; width:920px; height: 75px;background-color:ivory; border-color:black;"> 
 
    <font size="2">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;MachId :</font> 
 
    <input type="text" name="Text2" maxlength="15" style="height:15px; width:100px; border-color:black"><font size="2"></font> 
 
    <font size="2">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;From Date(dd/mm/yy) :</font> 
 
    <input type="text" name="Text3" maxlength="8" style="height:15px; width:100px; border-color:black"><font size="2"></font> 
 
    <font size="2">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;To Date(dd/mm/yy) :</font> 
 
    <input type="text" name="Text4" maxlength="8" style="height:15px; width:100px; border-color:black"><font size="2">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font> 
 
    <input type="submit" value="Search" style="height:30px; width:80px; formaction="FirstServlet"/><br><br> 
 
    <font size = "2">Output Field :</font> <input type="text" name="Text1" maxlength="50" style="height:15px; width:100px; border-color:black"><font size = "2"></font> 
 
    <input type= "submit" value="Send" style="height:30px; width:80px; margin-left:15px">

+1

這是如何涉及到Javascript? (爲了這個問題的目的,你不能顯示一個簡單的形式,而不是一個非破壁空間和字體標籤的牆?) – nnnnnn

+1

標籤湯噩夢。 – megamoth

+0

我同意,但我只是從我的代碼複製了部分。當我下次要求時,一定會記住這一點 – Arun

回答

-1
<form name = "Field_Details" action = "ServletApp" method= "get"> 
<fieldset style="float: center; width:920px; height: 75px;background-color:ivory; border-color:black;"> 
<font size = "2">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;MachId :</font> <input type="text" name="Text2" maxlength="15" style="height:15px; width:100px; border-color:black"><font size = "2"></font> 
<font size = "2">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;From Date(dd/mm/yy) :</font> <input type="text" name="Text3" maxlength="8" style="height:15px; width:100px; border-color:black"><font size = "2"></font> 
<font size = "2">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;To Date(dd/mm/yy) :</font> <input type="text" name="Text4" maxlength="8" style="height:15px; width:100px; border-color:black"><font size = "2">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font> 
<input type= "submit" value="Search" onclick="submitForm('FirstServlet');" style="height:30px; width:80px; formaction="FirstServlet"/><br><br> 
<font size = "2">Output Field :</font> <input type="text" name="Text1" maxlength="50" style="height:15px; width:100px; border-color:black"><font size = "2"></font> 
<input type= "submit" value="Send" onclick="submitForm('ServletApp');" style="height:30px; width:80px; margin-left:15px"> 
+1

你能解釋一下你改變了什麼來解決這個問題嗎? – Barmar

+0

添加onclick屬性到兩個提交按鈕來使用javascript提交表單。請注意。 – Mark

+0

將解釋放在答案中,而不是評論。並解釋爲什麼這是必要的。 – Barmar

0

有相當多的事情錯在這裏。我不是說讓你感覺不好,只是爲了幫助。

  • 在HTML中,屬性在等號周圍不應有空格。不知道如果一些瀏覽器都原諒你了這一點,並讓它工作,但它不是標準的,誰知道,可能是一些問題的原因
    • 切勿使用<font>元素,因爲它已經過時了https://developer.mozilla.org/en-US/docs/Web/HTML/Element/font力爭用CSS代替
    • 你應該幾乎從不需要&nbsp;實體,力爭用CSS來代替
    • 直到你獲得更多的經驗,力爭從不使用內嵌樣式(這是在你的HTML的style屬性)。力爭用外部CSS代替
    • 您應該使用元素,而不是<input type="submit">,因爲它是更多的語義

老實說,沒有這些東西都必然爲什麼代碼不工作的原因,但該方法你有這樣的寫作讓其他人難以看清和評估正在發生的事情來幫助你

+2

HTML規範中沒有什麼說你不能在'='符號周圍有空格。任何不接受它的瀏覽器都會被破壞。 – Barmar

+0

2

你在第一個提交按鈕中有一個錯字,你錯過了style屬性末尾的引號。所以formaction被視爲style的一部分,而不是一個單獨的屬性。

<input type="submit" value="Search" style="height:30px; width:80px;" formaction="FirstServlet"/><br><br> 
0

這下面的代碼工作得很好,我

<form name = "Field_Details" action="ServletApp" method= "get"> 
    <fieldset style="float: center; width:920px; height: 75px;background-color:ivory; border-color:black;"> 
    <font size = "2">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;MachId :</font> <input type="text" name="Text2" maxlength="15" style="height:15px; width:100px; border-color:black"><font size = "2"></font> 
    <font size = "2">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;From Date(dd/mm/yy) :</font> <input type="text" name="Text3" maxlength="8" style="height:15px; width:100px; border-color:black"><font size = "2"></font> 
    <font size = "2">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;To Date(dd/mm/yy) :</font> <input type="text" name="Text4" maxlength="8" style="height:15px; width:100px; border-color:black"><font size = "2">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font> 
    <input type="submit" value="Search" style="height:30px; width:80px;" onclick='this.form.action="FirstServlet";'/><br><br> 
    <font size = "2">Output Field :</font> <input type="text" name="Text1" maxlength="50" style="height:15px; width:100px; border-color:black"><font size = "2"></font> 
    <input type= "submit" value="Send" style="height:30px; width:80px; margin-left:15px";/> 

你可以只寫了提交button.I已經使用這個只爲一個提交按鈕,因爲我想我的第二個提交按鈕的動作相同形成行動。

<input type="submit" value="Search" style="height:30px; width:80px;" onclick='this.form.action="FirstServlet";'/><br><br>