2012-04-05 6 views
1

Ich habe Formular, wo ich Textfeldwert und Link (add) habe. Wenn der Benutzer Daten in das Textfeld eingibt und auf Hinzufügen klickt, sollte der eingegebene Text textArea in derselben Ansicht hinzugefügt werden. Ich habe versucht, dies mit ajax.actionlink zu tun, aber ich kann nicht herausfinden, wie auch übergeben Sie den eingegebenen Text Parameter. kann jemand eine andere Idee haben, die ich versuchen kann .. ich kann Ajax.beginForm nicht verwenden, weil ich HTML-Formular bereits habe.MVC2.0 Textbox lesen und Wert zum Textbereich auf derselben Ansicht hinzufügen

Vielen Dank im Voraus.

Hier ist HTML-Code, den ich bisher mit Ajax Aktion Link habe.

    <div class="editor-label"> 
         <%: Html.Label("DefectID/FeatureID")%> <%: Html.TextBox("DefectID", "", new { @class = "required" })%> <%: Ajax.ActionLink("Add", "InsertDefectIDs", new AjaxOptions { UpdateTargetId = "DefectIds" }) %><%--<input type="button" name="add" value="Add" />--%> 
        </div> 

        <div class="editor-field"> 
         <%: Html.TextAreaFor(model => model.DefectIds, new { rows = 5, cols = 12, @readonly = "true" })%> 
         <%: Html.ValidationMessageFor(model => model.DefectIds)%> 
        </div> 
+0

Tut Die Benutzereingabe muss an den Server gesendet werden, wenn der Benutzer auf Hinzufügen klickt, wenn Ihr Endziel darin besteht, ein Textfeld einzufügen? Sie können dies viel einfacher mit Javascript auf der Client-Seite tun. Bitte helfen Sie uns zu verstehen, was Sie erreichen möchten. – jessegavin

+0

Ich habe versucht, dies mit Javascript ohne Erfolg zu tun. Ja. Mein letztes Ziel ist es, das Textbereich-Feld zu füllen. Ich muss nicht zum Server gehen. – AJP

Antwort

0

Sie sollten so etwas wie die folgende Lage:

<div class="editor-label"> 
    <%: Html.Label("DefectID/FeatureID")%> 
    <%: Html.TextBox("DefectID", "", new { @class = "required" })%> 
    <input type="button" name="add" value="Add" onclick="AddDefectId();" /> 
</div> 

<div class="editor-field"> 
    <%: Html.TextAreaFor(model => model.DefectIds, new { rows = 5, cols = 12, @readonly = "true" })%> 
    <%: Html.ValidationMessageFor(model => model.DefectIds)%> 
</div> 

Javascript

<script type="text/javascript"> 
    function AddDefectId() { 
     var defectId = document.getElementById('DefectId').value; 

     if(defectId != "") 
      document.getElementById('DefectIds').value += defectId + "," 

     document.getElementById('DefectId').value = "";   
    }​ 
</script> 

Hier

HTML ist eine gerade HTML/JavaScript Beispiel: http://jsfiddle.net/zJpRA/6/