문제

내 ASP.NET MVC 응용 프로그램에서 사용자가 텍스트 상자에 값을 추가 한 다음 ajax.actionLink를 누릅니다. 나는 다음과 같은 일을하고 싶다 :

ajax.actionLink ( "go", "action", "컨트롤러", new {value = textbox1.value})

아니면이 텍스트 상자 값을 내 동작으로 되돌릴 수있는 방법은 무엇입니까? jQuery?

도움이 되었습니까?

해결책

Ajax를 사용하여 작업을 실행할 수 있습니다 $ .get 방법:

<script type="text/javascript">     

    $(document).ready(function()
    {
        $("#t").change(function()
        {
            RunAction();
        });

        RunAction();
    });

    function RunAction()
    {
        var action = '<%= Url.Action("Action", "Controller") %>';
        var data = $("#t").serialize();
        $.get(action, data);
    }

</script>

<input type="text" id="t" />

다른 팁

알렉산더 감사합니다! 나를 올바른 길로 데려와 주셔서 감사합니다. 나는 당신에게 최신 코드를 시도하지 않았지만 이전 코드를 작동시킬 수있었습니다. 작동 코드는 다음과 같습니다. 나는 이것이 모두 kludgy라고 확신하지만, 아마도 누군가가 나에게 더 우아한 해결책을 보여줄 수있을 것이다.

            <script type="text/javascript">
                $(document).ready(function() {
                    $("#myVal").change(function() {
                        changeActionURL();
                    });
                    changeActionURL();
                });
            function changeActionURL() {
                var url = '<%= new UrlHelper(ViewContext.RequestContext).Action("Action", "Controller") %>' + '?dup=' + $("#myVal").val();
                $("#u").attr('href', url);
            }
            </script>

            <a id="u" href="" onclick="Sys.Mvc.AsyncHyperlink.handleClick(this, new Sys.UI.DomEvent(event), { insertionMode: Sys.Mvc.InsertionMode.replace, updateTargetId: 'HellaYeah' });">Report Dupe</a>

        </p>
        <div id="response">not done</div>

당신이 볼 수있는 내 솔루션은 ASP.NET AJAX 헬퍼 클래스를 사용하는 대신 링크를 하드 코드하는 것입니다.

이것이 jQuery의 텍스트 상자에서 값을 검색하는 방법입니다.

var input =  $('input[name=txt_MyTextBox]').val()

$ .get (action, data)를 바꾸십시오. $ ( "#YourTargetID").로드 (동작, 데이터); 다음과 같이 ajax를 얻습니다.

<script type="text/javascript">     

    $(document).ready(function()
    {
        $("#t").change(function()
        {
            RunAction();
        });

        RunAction();
    });

    function RunAction()
    {
        var action = '<%= Url.Action("Action", "Controller") %>';
        var data = $("#t").serialize();
        $("#yourTargetId").load(action, data);
    }

</script>

<input type="text" id="t" />
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top