在提交之前使用中间Web服务服务调用的HTML表单

时间:2012-06-30 14:22:58

标签: javascript jquery html ajax

我有一个HTML表单来更新提交给Java servlet的帐户中的地址。

问题在于,表单不应接受自由流动的地址文本。相反,用户应输入邮政编码/门牌号/街道名称,然后点击搜索按钮。

此搜索需要转到Web服务,执行身份验证并获取符合搜索条件的有效地址列表。

此地址列表应以相同的形式显示给用户(取消隐藏隐藏元素或使用模态对话框),以便用户可以选择他的地址。

只有在选择了有效地址后,用户才能点击表单提交按钮,该按钮将数据发送回servlet。

我不确定如何让这两个按钮在表单中执行不同的操作。我是JavaScript的新手,非常感谢任何指针或示例。

1 个答案:

答案 0 :(得分:0)

为您的webservice构建基于搜索结果(基本字符串)的值输出。将此数据放在JSON语句或javascript数组中。

返回看起来像这样的东西。      ['SearchResult1','SearchResult2','SearchREsult3']

在搜索框上。在变化或模糊时绑定一个函数。

$('#SearchBox').bind('change', function(){

   var val = $(this).val();
   //Please reference the Jquery Ajax function as im typing this from memory and i always mix one or two things up :).
   $.ajax({
     "type" : "post",
     "url"     : "yoururlhere",
     "data"    : { "search":val },
     success   : function(dataset){

        //When it comes back here check to see if its valid data etc etc

        //After you validate you can populate a picklist on the page with the values.  Or do anything you want with the values like this

        for(x in dataset){
           $('#DocumentElement').append('<p>'+ dataset[x] +'</p>');
        }

     }
   });


});

这应该让你开始。之后你可以在回调上做更多的事情,或者以更适合你的方式修改dom:)。